Setting up the Prompt Products Database for ap_pipe¶
ap_pipe.py needs an existing Prompt Products Database (PPDB) in which to store its results. Such a database will be provided externally during operations, but developers can run make_ppdb.py to set up their own database for testing. This page provides an overview of how to use make_ppdb.py.
Configuring the database¶
ap_pipe.py includes information about the database location and schema in its ApPipeConfig
, and most users pass this information to the script through the --config
and --configfile
command-line options.
make_ppdb.py also uses ApPipeConfig
and the --config
and --configfile
options, so users can pass exactly the same arguments to make_ppdb.py and ap_pipe.py.
Supporting identical command line arguments for both scripts makes it easy to keep the database settings in sync.
For more information on the configuration options themselves, see lsst.dax.ppdb.PpdbConfig
.
ppdb.db_url
has no default and must be set to create a valid config.
Examples¶
Databases can be configured using direct config overrides:
make_ppdb.py -c ppdb.isolation_level=READ_UNCOMMITTED ppdb.db_url="sqlite:///databases/ppdb.db" differencer.coaddName=dcr
ap_pipe.py -c ppdb.isolation_level=READ_UNCOMMITTED ppdb.db_url="sqlite:///databases/ppdb.db" differencer.coaddName=dcr repo --calib repo/calibs --rerun myrun --id
make_ppdb.py ignores any ApPipeConfig
fields not related to the PPDB (in the example, differencer.coaddName
), so there is no need to filter them out.
Databases can also be set up using config files:
make_ppdb.py -C myApPipeConfig.py
ap_pipe.py repo --calib repo/calibs --rerun myrun -C myApPipeConfig.py --id