ProvSQL C/C++ API
Adding support for provenance and uncertainty management to PostgreSQL databases
Loading...
Searching...
No Matches
tool_registry_sync.h File Reference

Reload the in-memory external-tool registry from its persistent overrides. More...

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

void provsql_sync_tool_registry ()
 Rebuild the in-memory registry as "compiled seed overlaid with the provsql.tool_overrides rows".

Detailed Description

Reload the in-memory external-tool registry from its persistent overrides.

The default tools are compiled in (seeded in ToolRegistry.h); an administrator's changes are stored in the provsql.tool_overrides table. provsql_sync_tool_registry rebuilds the per-backend in-memory registry as "compiled seed, overlaid with the override rows", so a registration made in one backend is honoured by every other. It must be called at the top of any SQL function that consults the registry (the probability / compile / shapley / visualise dispatchers, the provsql.tools listing, and the mutators themselves).

It uses SPI (nesting-safe) and is a no-op leaving just the compiled seed when the overrides table is absent (an extension older than 1.8.0, or the upgrade not yet applied), so older databases keep working unchanged.

Extension-only: not linked into the standalone tdkc tool, which invokes no external tool.

Definition in file tool_registry_sync.h.

Function Documentation

◆ provsql_sync_tool_registry()

void provsql_sync_tool_registry ( )

Rebuild the in-memory registry as "compiled seed overlaid with the provsql.tool_overrides rows".

See tool_registry_sync.h.

Definition at line 200 of file tool_registry_sql.cpp.

Here is the call graph for this function:
Here is the caller graph for this function: