How many fields can I add?

Shane Vidal-Hal
Kilo Contributor

What is a reasonable number of fields to extend the Change table with for instance. At what point does it have a performance impact or does it only matter when you are trying to do large query or adding too many fields to a form? I see an OOB system has less than 40 fields and the table I just saw had 113 fields. The requirement is to add even more. Aside from the sanity of it, what if any is the technical impact of just adding more and more fields?

1 ACCEPTED SOLUTION

Chuck Tomasi
Tera Patron

Hi Shane,



Technically, MySQL can handle up to 64K (65,535) fields on a table. There's something you should know about the change_request table... Under the hood it's actually part of the task table. This came about in Dublin with a technology known as "table flattening". It's transparent to the customer, except when they start asking questions like this. Task already has a ton of fields on it including those for incident, sc_request, problem, and other tables that extend task.



Are we close to exceeding that, not really. You can add   a couple hundred more fields to change_request - although as you mentioned, there's the whole sanity of this. I wouldn't want to be the poor soul who has to fill out a few hundred fields on ANY form (be it ServiceNow or the IRS.) Will there be performance issues. Not really. MySQL is pretty solid in that respect unless you start doing some really bizarre queries, but that's a story for another time.


View solution in original post

3 REPLIES 3

Brad Tilton
ServiceNow Employee
ServiceNow Employee

Technically you should be able to add that man fields, but you'll want to be really careful about how many you actually include on a form or list. I would also take a look if those extra attributes would make more sense on a related table than all on the change table.


Chuck Tomasi
Tera Patron

Hi Shane,



Technically, MySQL can handle up to 64K (65,535) fields on a table. There's something you should know about the change_request table... Under the hood it's actually part of the task table. This came about in Dublin with a technology known as "table flattening". It's transparent to the customer, except when they start asking questions like this. Task already has a ton of fields on it including those for incident, sc_request, problem, and other tables that extend task.



Are we close to exceeding that, not really. You can add   a couple hundred more fields to change_request - although as you mentioned, there's the whole sanity of this. I wouldn't want to be the poor soul who has to fill out a few hundred fields on ANY form (be it ServiceNow or the IRS.) Will there be performance issues. Not really. MySQL is pretty solid in that respect unless you start doing some really bizarre queries, but that's a story for another time.


Hi Chuck



Thanks, that's a nice solid answer. I knew about the table flattening aspect of the task table, hence my asking. Cos I new that if the customer is doing similar things on other task extended tables then it would be getting pretty large.



Regards


Shane