diff --git a/src/dsql/PackageNodes.epp b/src/dsql/PackageNodes.epp index fbbf75ccdab..ae5b4a3981d 100644 --- a/src/dsql/PackageNodes.epp +++ b/src/dsql/PackageNodes.epp @@ -479,11 +479,12 @@ void PackageReferenceNode::make(DsqlCompilerScratch* dsqlScratch, dsc* desc) bool PackageReferenceNode::constantExists(thread_db* tdbb, Jrd::jrd_tra* transaction, const QualifiedName& fullName, bool* isPrivate) { - fb_assert(fullName.schema.hasData()); - if (fullName.package.isEmpty() || fullName.object.isEmpty()) return false; + // Delay this assert check due to invalid constructs such as "OLD.*" that may be passed to this function. + fb_assert(fullName.schema.hasData()); + auto* package = MetadataCache::getVersioned(tdbb, fullName.getSchemaAndPackage(), CacheFlag::AUTOCREATE); if (package == nullptr) return false;