The new attribute system is now in place. The four major attribute methods (get_attributes, add_attribute, delete_attribute, and change_attribute) in FIG.pm have been modified so they will process attributes according to how the system is configured.
- If FIG_Config.pm contains a value for
$attrURL, then FIG.pm will look for the attributes at the specified URL. Currently, a set of live attributes are located athttp://anno-3.nmpdr.org/attrib_server/AttribXMLRPC.cgi. (That address is an XML service script, not a real web page.) - If FIG_Config.pm contains a value for
$attrDBD, then the FIG.pm will look for the attributes from a MySQL database. Currently, there are MySQL databases for this purpose set up on anno-3 and nmpdr-1. - If neither of those values are found in FIG_Config.pm, the legacy attribute system will be used.
Eventually, we want a local attribute database (method 2) set up on the bioseed servers for use as a scratch database, and public SEEDs would use the attribute server (method 1). There is a timing issue with the conversion, and the messy details are given below the fold.
The database needs to be populated as close as possible to the date on which we intend to change to the new system so that no information is lost.
The command
AttrDBRefresh -migrate
can be used to fill an attribute database on a server with data from the server's FIG instance. In order to do this, you need to set up the attribute database. Instructions on doing so can be found here.
Once the database is filled, you will need to run plain oldAttrDBRefresh
periodically to insure the list of features and genomes in the attribute database is up-to-date.
Currently, the new attribute system is only being used by the FIG instance on the NMPDR Development Server. This means that the next time the Sprout is loaded, it will use the attributes on the attribute server. That load is scheduled for November 18, and if we decide we're not ready at that time, it is easy to fall back to the legacy system.
Under the new system, maintenance of attribute keys is handled by the CGI script at http://anno-3.nmpdr.org/attrib_server/Attributes.cgi. For the time being, scripts like load_attributes and FIG methods for maintaining attribute keys are still in place. These will cease to operate once we cut over.
Leave a comment