-
Notifications
You must be signed in to change notification settings - Fork 827
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Problems with boolean serialization/deserialization #699
Comments
Additional pertinent information found: |
Is this still an issue and also reproducible? |
This is still an issue in the following case: Class has field -> subclass doesn't have field -> subsubclass redeclares field. I removed the redeclared field from the subsubclass and it stopped the issue with serialization/deserialization, but anyone that has a similar layout will definitely run into this problem. |
@esalsbury: Does this work when you enable |
If we can detect this situation maybe we could log a warning. WDYT, @theigl? |
@magro: This makes sense if the detection doesn't add too much overhead. I'll look into this when I have some spare time. |
#763 Add an exception message and a test case. I find override write() is better If check extendFieldName in override initializeCachedFields, the existing test cases cannot be passed. |
Using 5.0.0-RC4 version. Here is the basic pool setup:
Serialize method:
Deserialize method:
I can reliably cause a failure with the following test where I serialize and immediately deserialize an object:
This produces the following comparison objects:
Before Serialize/Deserialize:
[accountId = -8490936757185012249, conversionType = Custom, customNote = true, employeeId = 4625218007351340003, expireLevelLicenses = false, otherAccountId = -8463767768599195457, otherAccountName = sit, otherProgram = Program, otherRegion = EU, ipAddr = sit, link = false, localOnly = false, newAccountId = -1925026497398518482, skipEmailFlags = com.object.path.SkipEmailFlagsADT [skipAccountEmail = false, skipOtherAccountEmail = true], skipPaymentReversalCheck = true])
After Serialize/Deserialize:
[accountId = -8490936757185012249, conversionType = Custom, customNote = false, employeeId = 4625218007351340003, expireLevelLicenses = false, otherAccountId = -8463767768599195457, otherAccountName = sit, otherProgram = Program, otherRegion = EU, ipAddr = sit, link = false, localOnly = false, newAccountId = -1925026497398518482, skipEmailFlags = com.object.path.SkipEmailFlagsADT [skipAccountEmail = false, skipOtherAccountEmail = true], skipPaymentReversalCheck = true])
Everytime this runs, the customNote boolean field flips from true to false.
The text was updated successfully, but these errors were encountered: