Q045warning

Function access undeclared

A dialect resolved a function without saying whether it reads or writes data.

No reproduction. Every built-in dialect declares whether the functions it resolves read or modify data, so only a third-party dialect can raise it, and the playground runs the built-in dialects.

When it is reported

The function is treated as read-only, which is right for the built-ins involved. It is reported because a writing function treated this way would be sent to a read replica.

How to fix it

If you maintain the dialect, declare the function's data access.

See it in an example

In your terminal

$ sgl explain Q045

Look for FunctionDataAccessUndeclared in Seagull's source to see where it is reported.