Changes between Version 21 and Version 22 of MapGuideRfc78


Ignore:
Timestamp:
Jul 15, 2009, 8:51:25 AM (15 years ago)
Author:
brucedechant
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • MapGuideRfc78

    v21 v22  
    4545== Proposed Solution ==
    4646
    47 A new class of MgTransaction will be added to represent a transaction to be performed in a data store.
     47A new class of !MgTransaction will be added to represent a transaction to be performed in a data store.
    4848{{{
    4949/// \brief
     
    7676Changes to Feature Service
    7777
    78 ExecuteSqlQuery() and ExecuteSqlNonQuery() must use the same underlying connection on which the transaction started. So MgTransaction instance is passed in as parameters for both of these two methods. The MgTransaction implementation can return the undelying connection.
     78!ExecuteSqlQuery() and !ExecuteSqlNonQuery() must use the same underlying connection on which the transaction started. So !MgTransaction instance is passed in as parameters for both of these two methods. The !MgTransaction implementation can return the undelying connection.
    7979
    8080{{{
     
    119119}}}
    120120
    121 Timeout configuration for MgTransaction
     121Timeout configuration for !MgTransaction
    122122
    123 If an MgTransaction has been started but hasn't been committed or rollbacked within the timeout, the transaction will be automatically rollbacked. If you call Commit() or Rollback() after timeout, an exception will be thrown reminding that the transaction has been timeout.
     123If an !MgTransaction has been started but hasn't been committed or rollbacked within the timeout, the transaction will be automatically rollbacked. If you call Commit() or Rollback() after timeout, an exception will be thrown reminding that the transaction has been timeout.
    124124
    125 Two items will be added into WebConfig.ini for transaction timeout setting. If the transaction hasn't been committed or rollbacked within thirty minutes, it will be automatically rollbacked.
    126 
     125Two items will be added into !webconfig.ini for transaction timeout setting. If the transaction hasn't been committed or rollbacked within thirty minutes, it will be automatically rollbacked.
     126{{{
    127127DataTransactionTimeout             = 1800
    128128DataTransactionTimerInterval       = 300
    129 
    130 Bind MgTransaction to FDO connection
     129}}}
     130Bind !MgTransaction to FDO connection
    131131
    132132The transaction has to be bound with the underlying FDO connection where it starts during its life circle. The underlying FDO connection will be kept used by the transaction until the call of either Commit() or Rollback(). The implementation of MgTransaction should be able to return the underlying connection.
     
    136136This is a new API, so API documentation need to be updated. However, it will not affect the existing application if you don't use it at all.
    137137
    138 This new API is designed for sql statement execution. You have to use the API with ExecuteSqlQuery() or ExecuteSqlNonQuery() within the transaction.
     138This new API is designed for sql statement execution. You have to use the API with !ExecuteSqlQuery() or !ExecuteSqlNonQuery() within the transaction.
    139139
    140140== Test Plan ==