Hi Christopher, Sorry about the wrog information... I checked the column family and it's really defined as a counter.
On Tue, Nov 5, 2013 at 8:39 PM, Christopher Smith <cbsm...@gmail.com> wrote: > If it isn't a counter type, then why calculate the diff value, just do the > insert. > > > On Tue, Nov 5, 2013 at 2:28 PM, Luiz Carlos Jr <l...@s1mbi0se.com.br> > wrote: > > > Hi Christopher, > > > > Actually it's not a counter, but just a field that stores integers. I'm > > logging the expected values but not the command itself because I'm using > > pycassa to send it. I'm absolutely sure that it's not an overflow case. > I'm > > talking about numbers in order of 10~100k with no math operators that > could > > raise an expection (only one subtraction operation). > > > > Any other ideas ? Thanks for the tips ! > > > > > > On Tue, Nov 5, 2013 at 12:29 PM, Christopher Smith <cbsm...@gmail.com > > >wrote: > > > > > Given your use case I'd recommend not using a counter for the field. > > > > > > Are you logging the update command you are sending Cassandra? Are you > > sure > > > you aren't overflowing the value either in Cassandra or in your batch > > code? > > > > > > On Monday, November 4, 2013, Luiz Carlos Jr wrote: > > > > > > > Hi ! > > > > > > > > I have a script written in python that should update a counter in > > > > Cassandra. It acts like a batch that corrects the counter. > > > > > > > > What script does is: get the real value that should be at database, > get > > > the > > > > current value that is persisted at database, calculates the > difference > > > > between values and finally send insert command to specific row key > > > passing > > > > the diff to update the counter. > > > > > > > > All works fine. I got the correct values and diffs but, after insert > > > > command, the value of row key is not the expected. > > > > > > > > Example: > > > > Real Value = 35000 > > > > Current DB Value = 30000 > > > > Diff Value = 5000 > > > > > > > > I sent the insert command passing diff=5000 so, the expected new DB > > value > > > > should be 35000. But sometimes the new DB value is a crazy negative > > > number, > > > > like -360.000. It doesn't make any sense, because there's no > > combination > > > of > > > > values and operators that could result on a value like that. > > > > > > > > And, if i run the script again, the final persisted value is correct. > > If > > > I > > > > try again later the final persisted value appears wrong again... > > > > > > > > Can anyone help me with this ? The same script sometimes works fine > and > > > > sometimes persists a crazy value. > > > > > > > > Thank you ! > > > > > > > > > > > > > -- > > > Chris > > > > > > > > > -- > Chris >