ahgittin opened a new pull request #1205:
URL: https://github.com/apache/brooklyn-server/pull/1205


   It has always been a bad idea but previously we have allowed it.  This 
causes obscure but horrible problems in many cases:
   
   * lambdas which don't implement Serializable are written by xstream as 
`null`, and read back as null, with no warning
   * lambdas which do implement Serializable might be okay written by xstream 
but might not, and can be read differently or not at all by different JVMs, and 
are even more brittle than inner classes
   
   This PR causes us to be stricter about persisting lambdas e.g. within a 
config key or part of an effector so that we fail fast.
   
   Default is to FAIL if we attempt to write one which will be treated as null, 
and WARN otherwise.  This can be configured in brooklyn.cfg using the keys in 
LambdaPreventionMapper.
   
   In addition this adds a delta-persistence synchronously as part of 
application/entity creation, so if a problem is detected the creation will 
fail.  Things are unmanaged now if creation fails.
   
   Internally there is more work done and more API methods to get access to 
failures during persistence.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to