On Monday, May 11, 2015 at 6:33:02 PM UTC-5, Michael Penick wrote:
> It looks like the application is attempting to set the high watermark lower than the low watermark. The library returns
> CASS_ERROR_LIB_BAD_PARAMS in that case. The low watermark needs to be set higher first.
Thanks for the reply, Michael. I looked at the cpp-driver code too and saw that it is indeed an error to set the high water number to be lower than the low water number but 1) I did not do this and 2) I did not get an error setting either the high or low water mark.
To test I changed to set the low water mark first to a megabyte and the high water second to 16 gigs. No error.
But then when the program gets going, after apparently successfully setting the high water mark to 16 megs, the logging warnings say the high water mark of 65,536 bytes is being exceeded:
1431387553.739 [WARN] (:232:bool cass::Connection::write(cass::Handler *, bool)): Exceeded write bytes water mark (current: 901319 water mark: 65536) on connection to host 10.3.3.8
To recap: I set the high water mark to 16 megs without error. I start writing, I get warnings back from the logging callback that the write bytes water mark of the default value of 65536 is being exceeded. The problem happens with the 2.0 version of cpp-driver but not with 1.0.
For another test I tried setting the high water mark to 16,384, below the low water mark, and that didn't work either -- it doesn't error and then I get warnings saying the 64K high water mark is being exceeded. I'll dig a little deeper from home tonight but right now I am still asserting that setting the high water mark somehow broke in 2.0.