Právě jsem replikoval váš problém a dostal jsem stejnou chybu - zdá se, že funkce nemůže fungovat z příkazu DELETE. Úplný text chyby je:
ORA-04091: table HOU.LONGTABLE is mutating, trigger/function may not see it
ORA-06512: at "TONY.SEARCH_LONG", line 4
Tento procedurální přístup bude fungovat:
begin
for r in (select id from longtable
where search_long(rowid) like '%hello%')
loop
delete longtable where id = r.id;
end loop;
end;