genericservices/taskscheduler/group/RELEASE.TXT
changeset 0 e4d67989cc36
equal deleted inserted replaced
-1:000000000000 0:e4d67989cc36
       
     1 Release 016
       
     2 -----------
       
     3 By NicholaT 1st October 2001
       
     4 
       
     5 * Fix for defect "Task Scheduler asserts that new schedules are inserted at the end of the list" (EXT-4ZT8K9)
       
     6 
       
     7 Release 015
       
     8 -----------
       
     9 By NicholaT 15th August 2001
       
    10 
       
    11 * Fix for defect "Main, KERN-EXEC, 3" (WIR-4Z7J5T)
       
    12 
       
    13 Release 014
       
    14 -----------
       
    15 By AlexW 1st June 2001
       
    16 
       
    17 * Fix for defect "Schedules.dat reserves all disk space although messages were sent" (WIR-4WPENB)
       
    18 * Fix for defect "SchSvr: Too many unnecessary TNames on the heap" (WIR-4WPEPX)
       
    19 * Fix for defect "SchSvr: Deleting a schedule doesn't cancel the schedule timer" (WIR-4WKD42)
       
    20 * Fix for defect "Wins specific task scheduler start up problem" (WIR-4WXHU4)
       
    21 * Fix for defect "A short message cannot be sent immeditely if there is a scheduled sms message in outbox." (WIR-4WYLUZ)
       
    22 
       
    23 Release 013
       
    24 -----------
       
    25 By ChrisD 6th April 2001
       
    26 
       
    27 * Fix for defect "SMS sending during bidirectional cable data transfer HSCSD v.120 2+2" (EDNTPAN-4VHHMP)
       
    28 
       
    29 Release 012
       
    30 -----------
       
    31 By AlexW 28th February 2001
       
    32 
       
    33 * Fixed for defect "Messages with "Resend" status are not sent after reboot" (EDNHLJT-4TRAAE)
       
    34 
       
    35 Release 011
       
    36 -----------
       
    37 By AlexW 9th June 2000
       
    38 
       
    39 * Fix for defect "Task files are not created by the task scheduler" (EDNPHAR-4L3P6N)
       
    40 * Fixed the task file creation code so that RFs are not leaked anymore
       
    41 
       
    42 Release 010
       
    43 -----------
       
    44 By AlexW 1st June 2000
       
    45 
       
    46 * Fix for defect "Schedule server should use the cleanup stack more" (EDNCDUG-4KVJYF)
       
    47 
       
    48 Release 009
       
    49 -----------
       
    50 By ChrisD 6 April 2000
       
    51 
       
    52 Remove unused variable warnings in schman.cpp.
       
    53 
       
    54 Release 008
       
    55 -----------
       
    56 By ChrisD 28 March 2000
       
    57 
       
    58 Minor changes to fix build warnings in source & testcode.  Reordered testcode 
       
    59 in bld.inf to build in dependency order.  Updated testcode to accomodate new 
       
    60 Base API for RThread::Create and RProcess::CommandLine which has changed 
       
    61 in recent base releases.
       
    62 
       
    63 All tests run successfully in wins udeb except TTASKLAUNCHING which is not 
       
    64 complete yet.
       
    65 
       
    66 Release 007
       
    67 -----------
       
    68 By AlexW 29 February 2000
       
    69 
       
    70 * More boiler plating updates
       
    71 * Test code reorganised - all test code now placed in "Test" subdirectory.
       
    72 * New test code project to verify fixes for defects
       
    73 * Update to TYear2000 so that it now builds properly
       
    74 * Added minimal task handler as used by TScheduling test project and TYear2000
       
    75 * Fix for defect "CTaskExecutor::DoCancelL() does nothing" (EDNAWIR-4FWKPR)
       
    76 * Fix for defect "SCHSVR missing trailing L on internal server calls (and test code)"
       
    77   (EDNAWIR-4GRLA4)
       
    78 
       
    79 
       
    80 Release 006
       
    81 -----------
       
    82 By AlexW 24 January 2000
       
    83 
       
    84 
       
    85 Summary
       
    86 =======
       
    87 o  Implemented change request AALR-4EDG75 (GT Change Requests). This required adding additional
       
    88    parameters to two RScheduler methods.
       
    89 o  Fixed defect EDNAWIR-4FQJ6A - "Registering twice with the task scheduler causes a memory leak"
       
    90    (Symbian Defect Tracking v3.0)
       
    91 o  Fixed defect EDNAWIR-4FRFR6 - "Can't retrieve task data when target buffer is too big to hold 
       
    92    the data" (Symbian Defect Tracking v3.0)
       
    93 o  Fixed defect EDNAWIR-4FQGXP - "Cannot schedule new tasks when schedule server data file is
       
    94    missing" (Symbian Defect Tracking v3.0)
       
    95 o  Fixed defect EDNAWIR-4GQN48 - "CClientProxy leaves with a "count" value" (Symbian Defect 
       
    96    Tracking v3.0)
       
    97 
       
    98 
       
    99 API Changes
       
   100 ===========
       
   101 
       
   102 TTime& aNextDue is new - This returns the next time a task/shedule is due.
       
   103 
       
   104   TInt RScheduler::GetScheduleL(const TInt aScheduleHandle, TScheduleState& aState, 
       
   105                                 CArrayFixFlat<TScheduleEntryInfo>& aEntries, 
       
   106                                 CArrayFixFlat<TTaskInfo>& aTasks, 
       
   107                                 TTime& aNextDue);
       
   108 
       
   109 
       
   110 TTime& aNextDue, TSchedulerItemRef& aRef are new - This returns the Schedule reference 
       
   111 for the taskId provided as parameter one, and also the next due time for this schedule.
       
   112 
       
   113   TInt RScheduler::GetTaskInfoL(const TInt aTaskId, TTaskInfo& aTaskInfo, TPtr8& aTaskData, 
       
   114                                 TSchedulerItemRef& aRef, TTime& aNextDue);
       
   115 
       
   116 
       
   117 Source Changes
       
   118 ==============
       
   119 
       
   120 o  Added TScheduleBackup::OpenStoreOrCreateLC(...) which attempts to open the schedule 
       
   121    store, or if it doesn't exist, recreates it (schstore.cpp/h).
       
   122    Updated TScheduleBackup to use this new method rather than opening the store explicitly.
       
   123 
       
   124 o  Amended CSchSession::RegisterClientL(...) to delete any existing iClient instance should
       
   125    the client session have already registered previously (fixes memory leak).
       
   126 
       
   127 o  Added two new tests to tsch.cpp project, one to check the added Change Request functionality,
       
   128    and the other, an additional task Id test.
       
   129 
       
   130 o  Added THelpers.cpp/h to provide support methods for the TSch test project.
       
   131 
       
   132 
       
   133 Testing
       
   134 =======
       
   135 All tests pass under WINS.
       
   136 
       
   137 
       
   138 Building
       
   139 ========
       
   140 All projects for this component build for all platforms.
       
   141 
       
   142 
       
   143 To Do
       
   144 =====
       
   145 o  testOOM<...> is bugged and no longer works due to the addition of error logging. This is not
       
   146    a defect in the logging, but a defect in the test code.
       
   147 o  The tests are based heavily on timing. This prevents satisfactory testing on a target device.
       
   148    Update the test exe and test code to use a semaphore to indicate successful exection rather than
       
   149    relying on a timed delay.
       
   150 
       
   151 
       
   152 Release 005
       
   153 -----------
       
   154 By AlexW 22 November 1999
       
   155 
       
   156 Added functionality to report and store task launching, and return value errors
       
   157 to the log engine by implementing CClientProxy::FailedToExecute().
       
   158 
       
   159 Changes
       
   160 -------
       
   161 1) Renamed FailedToExecute() to FailedToExecuteL() as this method allocates memory and
       
   162 may potentially leave.
       
   163 
       
   164 2) Added new mixin MExecutorErrorHandler to the task executor header file (schexec.h).
       
   165 The CClientProxy now implements the virtual function defined within this class, and
       
   166 the task executor now requires a reference to this class during construction (this is
       
   167 not an optional mixin). Should an error be returned by the launched task, then the
       
   168 virtual function implemented by this mixin is called and error cleanup may occur.
       
   169 
       
   170 3) Added new (private) active object, CLogSubmitter, to the CClientProxy class which 
       
   171 manages the submission of the log event to the log server (submission occurs
       
   172 asynchronously). The active object waits for the completion of the submission, and
       
   173 after completion has occurred, the CLogEvent object is destroyed. 
       
   174 
       
   175 In order to start the submission process, the active scheduler must be started.
       
   176 Due to the nature of the task manager, the next active object to have its RunL
       
   177 called is not necessarily the CLogSubmitter (another task may be scheduled to run
       
   178 instead). 
       
   179 
       
   180 Because potentially many tasks may be executed in parallel, multiple errors may 
       
   181 occur at the same time for any single client. This therefore requires a nested 
       
   182 start of the active scheduler when the CClientProxy::iLogSubmitter is already active.
       
   183 
       
   184 4) In order to store a contextual error message in the log, FailedToExecuteL() now
       
   185 has another overload. This simply takes two parameters, the first being the error
       
   186 code, and the second the error message to write to the log. 
       
   187 
       
   188 As the contextual error message can only be defined at the point in time immediately
       
   189 before the tasks are executed, the error message is prepared by the CClientProxy 
       
   190 class (in CClientProxy::BuildTaskErrorMessageL(...)) and is subsequently 'given'
       
   191 to the CTaskExecutor so that (should an error occur) it can inform the CClientProxy,
       
   192 by way of the MExecutorErrorHandler mixin, of the error that occurred and the appropriate
       
   193 message to write to the log.
       
   194 
       
   195 Changed a lot of source files to use _LIT rather than #defined'd _Ls
       
   196 	
       
   197 Also correctly capitalized full paths in some source files (i.e. "C:\system" => "C:\System").
       
   198 
       
   199 
       
   200 Release 004
       
   201 ---------
       
   202 Steve Etherington 26 October 1999
       
   203 Builds under current system.
       
   204 No significant changes
       
   205 
       
   206 Release 001
       
   207 -----------
       
   208 Built by WilliamB 26 June 1998
       
   209 
       
   210 Uses e32 128, e32tools 091, e32toolp 091, e32utils 018, f32 095, bafl 078, store 049
       
   211 
       
   212 Release valids on a clean drive.
       
   213 
       
   214 First release of task scheduler.
       
   215 
       
   216 Deb/Rel interoperable.
       
   217 
       
   218 Test code run and passed for all builds, except Y2K test code (tschy2k.exe) which
       
   219 hasn't been run because the test plan hasn't been approved yet
       
   220  since 003