Given the following class definitions
class SO1 (StorageObj):
'''
@ClassField attr1 __main__.SO2
'''
class SO2 (StorageObj):
'''
@ClassField attr2 int
'''
If we set the values with the following code that assigns a volatile object to the nested StorageObj :
o=SO1("name_of_SO1")
a=SO2()
o.attr1=a
c=a
b=SO2()
o.attr1=b
o.attr1.attr2=4
c.attr2=666
If we now print the values the result is the expected (because they are read from memory): the value of o.attr1.attr2 is 4 and the value of c.attr2=666, but the values in Cassandra are overwritten.
So, if we try to use it from a different application:
o=SO1("name_of_SO1")
print(o.attr1.attr2)
It shows 666 instead of 4
Maybe related to #319
Given the following class definitions
If we set the values with the following code that assigns a volatile object to the nested StorageObj :
If we now print the values the result is the expected (because they are read from memory): the value of o.attr1.attr2 is 4 and the value of c.attr2=666, but the values in Cassandra are overwritten.
So, if we try to use it from a different application:
It shows 666 instead of 4
Maybe related to #319