In metalink is only one solution. Recreate controlfile and this issue occurs for database with long db_unique_name ( 30 chars in length) and when catalog is in use.
RMAN-06004: ORACLE error from recovery catalog database: ORA-20999: internal error: found non-null and null site name
I found another solution. I set debug option for rman and in trace file was information:
DBGSQL: RCVCAT> select count(*) into cnt from db
DBGSQL: sqlcode = 905
DBGSQL: error: ORA-00905: missing keyword (krmkosqlerr)
DBGSQL: sqlcode = 905
DBGSQL: error: ORA-00905: missing keyword (krmkosqlerr)
So. It's looks like that rman wrongly generate code. After that I decided to use:
upgrade catalog
and now everything works ...
Probably is a small difference in catalog (for example after PSU) and all packages must be recreated.
What is strange that command "upgrade catalog" had been executed on newly created catalog...