The corrupted TableDescriptor cache is leading to errors such as "JoinQuery ERROR: Logic Error: No Join Found for table:", which can cause jobs and transactions to be unexpectedly cancelled or terminated.DescriptionA potential corrupted TableDescriptor cache is throwing errors such as "JoinQuery ERROR: Logic Error: No Join Found for table:", leading to abrupt cancellations or termination of jobs or transactions. This issue is associated with com.snc.nlq.MetadataGenerator modifying GlideElement objects in TableDescriptorCache, which may impact system stability.Steps to Reproduce Corrupted TableDescriptor Cache from MetadataGenerator Modifications: 1. Observe the code in production where the method getColumnMetadata is calling setTableName(), which should instead operate on a clone of the object using GlideElementDescriptor.clone(). 2. Note that the modification of GlideElement objects in TableDescriptorCache by com.snc.nlq.MetadataGenerator is likely causing the error. Possible TableDescriptor Cache Corruption on a Production Instance: 1. Navigate to the System Definition > Scripts Background section in the instance. 2. Run a script to check for TableDescriptor cache corruption, such as validating element descriptors and storage tables. 3. Observe error messages indicating mismatches between schema and storage tables, such as "MISMATCH DETECTED ElemSchemaTableName vs ElemStorageTable." 4. Note recurring errors in logs, particularly from the node associated with the instance. Note : These steps are partially correct , as CS teams were not able to fully reproduce this issue in any Prod instance.WorkaroundThis problem has been fixed. If an upgrade is possible, please refer to the Fixed In section to determine the latest version with a permanent fix that the instance can be upgraded to. If upgrading is not possible for your instance, please submit a case so the Servicenow team can implement a workaround for your instance.Related Problem: PRB1992648