1.21.01 16jun05 --Change JobPreferences to be a collection of XML objects. --Modify MasterScheduler to use splitter from preferences if present. --Add parameters to SimpleEventDatasetSplitter: dataset_depth, min_dataset, min_event --Add job preferences to dialroot logon and submit. ==DTD problems 1.21.02 16jun05 --Fix DTD problems. ==More DTD problems 1.21.03 16jun05 --Fix DTD problems --Add checking of arguments in WsClientScheduler::submit. --Change preference handling in dialroot logon and submit. 1.21.04 20jun05 --Modify MagdaFileCatalog to used magda_findfile to locate all replicas and then locally choose between them. --Modify MagdaFileCatalog to use the variables DIAL_FMS_PROTOCOLS and DIAL_FMS_PROTOCOL_ORDER to control replica selection. ==Works well. 1.21.05 21jul05 --Add SinglFileDataset creator registration and creators. --Add make_file_dataset to replace make_XXX_dataset. --Add content label to SingleFileDataset ctor. --Drop columns cattype,catname,lif,lfid from DFC. --Add make_compound dataset to enable creation and registration of comples datasets, e.g. the ATLAS rome AOD datasets. --Add CacheGenericRepository --Add Dataset memory report and WS scheduler resource report. --Fix memory leaks in XmlParser. ==make_compound dataset works well in a05 ==DR cache at BNL works in a06 1.21.06 09jul05 --Add method to set default credential for credential manager. --Add CSC (credential selection catalog) to hold DN-owner mapping. --Add owner to Dataset, Application and Task (backward compatible XML) --Add create time to Dataset, Application and Task (backward compatible XML) --Rename package dial_credential to dataset_credential. --Drop package dial_CBNT. --Move to gsoap 2.7.4. --Move to gsoap_gsi 2.5. --Replace return of char* with string in WS's. --Add mget to repository WS. --Modify check_proxy to also check proxy owner. ==Catalogs including WS repository seem to work OK. See talk at 29jul ADA meeting. 1.21.07 01aug05 --Add WS selection catalog. ==Catalogs and job processing work. 1.21.08 11aug05 --Add patch to load WS libraries in GenericRepository and GenericSelectionCatalog. --Modify file writing interface for Task, Application and dial_read_task. --Add dial_read_application and dial_make_application. --Move scheduler classes from dial_job to new package dial_sched. --Add converters to promote jobs to full type. --Add job persistency and recovery to MasterScheduler. --Eliminate dial_catalog. --Change in Job class interface and XML. NOT backward compatible. --Add job persistency and recovery to LocalScheduler. --Add type argument to uidtest. ==Now dataset_property works with WS catalogs. ==Able to recover completed jobs after service restart. ==Able to recover and complete running jobs after restart. 1.21.09 12aug05 --Add default file catalog. From DIAL_FILE_CATALOG if not explicitly set. --Add job interface and implementation to retrieve run directory. --Add modify and create time to SQL table. --Add since interface to generic and job repositories. ==Now able to easily retrieve run directory and logs. ==Now able to retrieve JR entries added after a specified time. 1.21.10 19sep05 --Change Job::INITIALIZING to Job::INITIALIZED. --Modify LocalScheduler to use job to build task. --Modify MasterScheduler to include task job in compound job. --Modify Job to carry substates. --Modify Job to hold subjob categories. 1.21.11 --Add Job::status_as_string(). --Change JobPreferences to a map of strings. --Add service web pages. --Fix MagdaFileCatalog to check magda_putfile return code. --Add Time class and modify Job and dialws to use it. 1.21.12 --Add job retries to CompoundJob controlled by max_retry in prefs. --Add selection catalog web pages. 1.21.13 ==Working pretty well. 1.21.14 --Move to ATLAS 10.0.4. 1.21.16 --Add Dataset::interface_location. --Replace dataset_property files with extract_files. --Add (nonworking) PoolFileCatalog to handle guid:... --Enable use of pool FC utiltiies by adding extra versions of mysql and mysql++. mysql++. --Add ApecDataset. --Add max_event to SimpleEventDatasetSplitter. ==Four apps are updated and working. 1.21.17 --Make PoolFileCatalog::get work for many protocols. --ADD ApecDataset to support ATLAS event collections. ==Successful gen, sim, digi and reco with ATLAS xforms. 1.21.18 --Make build_task optional in apps. --Replace filecat with fms and add get. --Make update frequency adjustable in JobUpdater. --Jobs no longer require result.xml for success. --Job runscript is not "ruN or "build_task" The script to run is copied to ./dial_run_script --PoolFileCatalog now uses the POOL connection as its name. --Add dial_job_run: takes job from AS and runs it --Add ThreadCredential so all classes can access thread credential name. --Modify repositories and SC's to anly grand write and delete access to user with matching credential name. --Add WsClient ping with means for cleint to st callback. --Fix delegation for all clients using this ping --Begin work on panda and condor-G analsysis services. --Allow DIAL_SCHEDULER_CONF to be a URL. 1.21.19 --Simplify repository auth to only require nonblank credential name. --Modify SC to use cred name as owner. --Add SC auth require cred name to match entry name. 1.21.20 --Url no longer inherits from string. --Change FileCatalog to provide only replica catalog interface. --Add FileMangementSystem with fms command. --Drop LogicalFile, AfsFC, NfsFC and LocalFC. --Many changes to adapt to the above. --MagdaFileCatalog is no longer writeable. 1.21.21 --Add contact to Job schema. --Make dial_run_job work. --Enable job submission with panda. --Enable job submission with Condor-G.