Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
None
-
None
-
None
Description
I'm using current top of the tree of couchbase-net-client (e205bc140519d117cbacb93ef563e1fe4248545b)
With following 2 node cluster
node 1 server version 4.5 GA : kv
node 2 server version 4.5 GA : kv,index,n1ql
and extra 2 node cluster with 5.0.0-3217 to be swap rebalanced.
Test was started with 2 node cluster then follow this
- swap rebalance kv node by removing 4.5 and adding 5.0
- add 5.0 and rebalance then copy index with different index name ( at this point, we have two index with same index value)
- remove 4.5GA and rebalance (at this point, we have completed upgrade to 5.0 so we have just 2 node cluster of 5.0)
Expected: no errors
Actual: Fatal error continues even after upgrade was completed. Success also continues but total success is smaller than before upgrade.
client log is attached
Matt Ingenthron yes, I kept the header and just hand modified the request body. Also, found a bug in SDKD-Java that it does not run prepared statement test due to this code.
https://github.com/couchbase/sdkd-java/blob/master/src/main/java/com/couchbase/sdkd/cbclient/N1QLQueryCommandContext.java#L259
n1qlparams.adhoc(true) should be n1qlparams.adhoc(false)
Some corrections : LCB, Java works but .NET doesn't.
I did some more test with Query QE and it turned out prepared statement was copied to Spock when I tested with Java and LCB but with .NET, prepared statement was empty.
Sounds weird but I assume Java SDK and LCB does some magic to copy the prepared statement which .Net SDK doesn't do?