This is similar to
DERBY-3944. The compiler uses the current schema in order to resolve unqualifed function names when preparing INSERT/UPDATE statement. This means that a generation clause may evaluate differently depending on who invokes the triggering INSERT/UPDATE statement. This violates the requirement that generation clause should be deterministic (see part 2 of the ANSI/ISO standard, section 4.16.
Hopefully, the same patch will fix both
DERBY-3944 and this issue.