Chapter 7. Using Unrestricted Languages
You may have noticed that some of the PLs in PostgreSQL can be declared as untrusted. They all end in letter u
to remind you that they are untrusted each time you use them to create a function.
This untrustedness brings up many questions:
Does being untrusted mean that such languages are somehow inferior to trusted ones?
Can I still write an important function in an untrusted language?
Will they silently eat my data and corrupt the database?
The answers are no, yes, and maybe respectively. Let's discuss these questions in order.