1.11.00 21apr05 --Add GSI credential delegation. ==Some client-side problems but credentals are forwarded. 1.11.01 25apr05 --Fix credentail delegation --Allow non-event dataset in SimpleEventDatasetSplittter. --Add debug_WorkingDirectory. 1.11.02 --Fix debug_WorkingDirectory. 1.11.03 --Move to gsoap 2.4.5 and drop external dependency. 1.11.04 --Modify WS scheduler implementation functions so they return SOAP_OK in case of error. 1.11.05 --Remove WS client errors for server faults. --Remove memory leaks from WS server and client (not all). 1.11.06 09may05 --Add dial/dial_credential --LocalScheduler now kills all running subjobs when a subjob fails or is killed or the compund job fails. --ChildWatcher now uses threads: one for each subjob. --Fix ProcessJob::kill --Modify Text to require a specified file must be readable. --Add make_singlefile_dataset --Add TextDataset --Add make_text_dataset --DefaultDatasetMerger merges TextDataset's into a SimpleCompoundDataset. --DefaultDatasetMerger merges event datasets into an EventMergeDataset. --Add credential manager. --Modify dialws to write deleteged credential to credential manager. --Modify JobUpdater to set job credentaial before each update. --Modify Job to record the current credential and to store its name as the credential name and owner for the job. --Modify Job to write credential file. --Modify WsClient to use the current thread credential to set the soap credential. 1.11.07 10may05 --Fix bugs from last release. ==It works! Job directories have crdentials and updates are done using the credentaial of the user who submitted the job. 1.11.08 12may05 --Add return status to Job and Job XML. --Add run script to return status and Job XML. --Add ScriptedJob 1.11.09 19may05 --Move to ATLAS 10.0.3 and root 4.03.02 ==Gaudi has the wrong external name ==Work but there are intermittent crashes and a few errors in the log ==Root noise is gone 1.11.10 20may05 --Fix mutex lock in ssystem --Add WorkingDirectory lock to ssystem --Add jid output file to root client --Increase the max # XML event ranges from 1k to 10k. --Fix CJ handling of failed subjobs--was causing crash. ==Works except for threadlock in task build. 1.11.11 20may05 --Fix thread lock in task build. ==Threadlock in ssystem 1.11.12 20may05 --Fix threadlock in ssystem (remove ssystem mutex) ==Another hang--CJ can leave the job mutex locked 1.11.13 20may05 --Fix CJ mutex problem. ==Few jobs run OK... ==Jobs fail because output histogram file not found on magdacache003 1.11.14 20may05 --Add long wait time for file existence in RHD. ==Hong is able to process his large dataset ==Crash in MS creation of subjob--null subdataset? 1.11.15 22may05 --Modify MS so debug_MasterScheduler sends log messages to cerr. --Modify MS to check DS is not null before creating subjob. --Modify Job to link rather than copy credential file. --Fix Job XML parsing of owner and credname. --Add debug_MasterScheduler 1.11.16 --Modify Job to put credentials in cred.tmp. --Fix GssCredential so crednetial files are not left behind. --Add ScriptedJob create to provide opportunity to copy credentials. --Add sample jobdef.C for root startup. --Root scheduler is now first taken from file named scheduler. --Add demo 8 for atlasdev-src. 1.11.17 --Switch to ATLAS 10.0.1 (from 10.0.3) 1.11.18 --Add root dictionary for JobIdList base and iterator. --Allow LSF to cope with jobs no longer tracked by bjobs --Remove *.la from globus, mysql and mysql++ 1.11.19 --Modify CJ to update result only at end of subjob loop. 1.11.20 --Modify CJ to introduce flags to control whether result update occurs after each append and after a loop timeout. Both are off by default. ==Faster but crashes 1.11.21 03jun05 --Fix crash: dataset splitter now holds result until the next result. Previously it was deleting it after the next append. --Modify dialws to block ssystem calls while processing WS requests. Hope to make the read length 0 errors go away. ==Threadlock! 1.11.22 03jun05 --Add a DialWs call to set a mutex for dialws to lock while processing requests and modify the scheduler service to set it using the mutex from the job updater. 1.11.23 04jun05 --Add min wait time of 2 sec between job updater loops to allow time to respond to service requests. ==Working well but very few updates for Hong's job with large output. ==Still seeing read length 0 errors. 1.11.24 06jun05 --Modify CJ to additionally update results when the the number of completed jobs is twice as large as the number included in the result. ==Updating too often--logic error. 1.11.25 06jun05 --Fix last change. 1.11.26 06jun05 --Add debug flag to CompoundJob. --Fix messages in dialws. 1.11.27 07jun05 --Fix debug formatting in CompoundJob. --Fix sample jobdef.C in dial_root. --Replace sleep in JU with sched_yield loop. --In dialws, protect gsi_accept/soap_accept with DialWs mutex and make those calls non-blocking. --Modify MasterScheduler to use $DIAL_MASTER_JOBS as the base for its jobs, if defined. ==No pause at all between update loops. 1.11.28 07jun05 --Fix JobUpdate pause. ==Threadlock. 1.11.29 07jun05 --Modify JobUpdater to avoid threadlock. ==Threadlock. 1.11.30 07jun05 --Modify LsfJob to unlock bjobs cache mutex. ==Still seeing read errors for gss_accept_sec_context. 1.11.31 never created --Add size, moditme and acctime to FileStatus. 1.11.31