X Platform Documentation Portal

Release Notes

X Platform Documentation Portal

Skip to end of metadata
Go to start of metadata

Release Highlights

This is a hotfix release addressing several bugs. 

See also:

1.2.117 Release Notes (01/09/2014)

Notes

(warning) This hotfix introduces code generation changes for protobuf encoding; code regeneration is required for models generated with protobuf encoding.

Bug

  • [XPLATFORM-309] - The Transaction Log tool fails to open a corrupt log with repair = true
    The 'open' command for the transaction log tool was fixed to allow the file open mode to specified. Prior to this fix the tool was hardcoded to open the file in read-only mode which prevents a corrupt log file from being repaired. The new usage is:
    open
      Set whether metadata should be displayed by commands that dump entries. 
      This command opens a ROG persister log. If looking for the log created by an application 
      driven by an AEP engine, use the name of the AEP engine (i.e. application name) as the 
      name of the recovery log here.
    Usage:
      open [-h] [-m]  [repair]
                [<-h|--help> Displays this help message (default='false')]
                [<-m|--mode>  Indicate the mode in which the log 
                             should be opened (default='r')]
                fileName: The log file to open relative to working directory
                         (no .log suffix)
                [repair: May be specified to indicate that the log should be 
                         repaired. Note: you must use a writable file mode to 
                         enable repair.]
    

  • [XPLATFORM-312] - IllegalArgumentException: object not in store after an entity field is nulled.
    This issue occurs when an object is added to a state graph by setting it as a member of another parent entity, then removing it from the state graph by setting the parent entity field to null, and finally setting parent entity field once more with same or another entity field. The problem was the that when the entity field was nulled in the first place it wasn't being completely detached from the first parent's object graph.

  • [XPLATFORM-313] - AepEngine.getEngineTime() NullPointerException when called from non engine thread
    Fixed a race condition that can occur when a non engine thread calls AepEngine.getEngineTime() on an engine using EventSourcing

  • [XPLATFORM-492] - State Replication: IllegalArgumentException: node's parent is null but is not a graph root
    Resolves an issue that can occur if a state object is updated and then removed and one of its children objects updated all in the same transaction. The bug can cause the commit to be propagated to the backup in a manner that results in the backup removing the parent object first before processing the child object update. The exception is thrown because the backup is unable to find the parent object (due to the incorrect order of processing) when processing the child object update

  • [XPLATFORM-494] - StateReplication recovery reconstitutes Protobuf encoded entity as the wrong type: node is not a child of this object
    Updates protobuf generated entities to ensure that the xRogType field used to identify the entity type is set each time a new protobuf builder is created for an object. This protects against cases in which the generated code API is used in an unexpected or unsupported fashion. This fix also adds javadoc to the public 'message()' method in generated protobuf objects to make it clear that this method is not intended for use by non platform code. Finally, this fix also introduces a '-r' switch the the transaction log tool's 'dump' and 'next' commands that allows dumping the raw payload bytes to help diagnose message corruption issues.

  • No labels