42.12. Nombres de procedimientos de Tcl #

En PostgreSQL, se puede usar el mismo nombre de función para diferentes definiciones de función si las funciones se colocan en diferentes esquemas, o si difieren el número de argumentos o sus tipos. Tcl, sin embargo, requiere que todos los nombres de procedimientos sean distintos. PL/Tcl maneja esto incluyendo los nombres de los tipos de argumentos en el nombre del procedimiento interno de Tcl y luego agregando el ID de objeto (OID) de la función al nombre del procedimiento interno de Tcl si es necesario para hacerlo diferente de los nombres de todas las funciones cargadas anteriormente en el mismo intérprete de Tcl. Por lo tanto, las funciones de PostgreSQL con el mismo nombre y diferentes tipos de argumentos también serán procedimientos de Tcl diferentes. Esto no suele ser una preocupación para un programador de PL/Tcl, pero podría ser visible al depurar.

Por esta razón, entre otras, una función PL/Tcl no puede llamar a otra directamente (es decir, dentro de Tcl). Si necesitas hacer eso, debes pasar por SQL, utilizando spi_exec o un comando relacionado.