Index on cmdb$par1 but not on cmdb

AndyLock
Mega Guru

While addressing an intermittent performance issue on incident.cmdb_ci lookups I notice that the index on our u_alias_ci field is on table cmdb$par1. There's an inconsistency on which table is indexed over. Some of our indexes are on both cmdb$par1 and cmdb, and some are only on cmdb$par1 or cmdb.  Is it something I need to worry about?

1 ACCEPTED SOLUTION

marcguegueniat
Kilo Sage

Hello,

Indeed no worry,

First, for anyone who migth be confused: the logical "cmdb" table in ServiceNow, is indeed 2 physical tables in DB : "cmdb" and "cmdb$par1"

Those 2 tables make a vertical partition.
This means they have the same records in them but the columns as spread among:
some of the columns are only in cmdb
some of the columns are only in cmdb$par1
some of the columns are in both

So what happen is that you created a column and servicenow decided to physically place it in cmdb$par1.
Therefore the index is only in cmdb$par1

In our instance we have a similar thing.

Regards,

View solution in original post

1 REPLY 1

marcguegueniat
Kilo Sage

Hello,

Indeed no worry,

First, for anyone who migth be confused: the logical "cmdb" table in ServiceNow, is indeed 2 physical tables in DB : "cmdb" and "cmdb$par1"

Those 2 tables make a vertical partition.
This means they have the same records in them but the columns as spread among:
some of the columns are only in cmdb
some of the columns are only in cmdb$par1
some of the columns are in both

So what happen is that you created a column and servicenow decided to physically place it in cmdb$par1.
Therefore the index is only in cmdb$par1

In our instance we have a similar thing.

Regards,