Details
-
Bug
-
Resolution: Fixed
-
Major
-
7.0.0
-
Untriaged
-
No
-
KV Sprint 2020-February
Description
When the SDK tries to connect to a memcached bucket on mad hatter, it first correctly negotiates collection support (since hello comes before select bucket):
+-------------------------------------------------+
|
| 0 1 2 3 4 5 6 7 8 9 a b c d e f |
|
+--------+-------------------------------------------------+----------------+
|
|00000000| 80 1f 00 77 00 00 00 00 00 00 00 87 00 00 00 01 |...w............|
|
|00000010| 00 00 00 00 00 00 00 00 7b 22 61 22 3a 22 6a 61 |........{"a":"ja|
|
|00000020| 76 61 2f 30 2e 30 2e 30 20 28 4d 61 63 20 4f 53 |va/0.0.0 (Mac OS|
|
|00000030| 20 58 20 31 30 2e 31 34 2e 36 20 78 38 36 5f 36 | X 10.14.6 x86_6|
|
|00000040| 34 3b 20 4f 70 65 6e 4a 44 4b 20 36 34 2d 42 69 |4; OpenJDK 64-Bi|
|
|00000050| 74 20 53 65 72 76 65 72 20 56 4d 20 31 31 2e 30 |t Server VM 11.0|
|
|00000060| 2e 32 2b 39 29 22 2c 22 69 22 3a 22 30 30 30 30 |.2+9)","i":"0000|
|
|00000070| 30 30 30 30 30 30 30 30 30 30 30 31 2f 30 30 30 |000000000001/000|
|
|00000080| 30 30 30 30 30 35 46 35 30 33 30 44 44 22 7d 00 |000005F5030DD"}.|
|
|00000090| 11 00 04 00 0a 00 10 00 08 00 06 00 07 00 12 |............... |
|
+--------+-------------------------------------------------+----------------+
|
|
+-------------------------------------------------+
|
| 0 1 2 3 4 5 6 7 8 9 a b c d e f |
|
+--------+-------------------------------------------------+----------------+
|
|00000000| 81 1f 00 00 00 00 00 00 00 00 00 10 00 00 00 01 |................|
|
|00000010| 00 00 00 00 00 00 00 00 00 04 00 06 00 07 00 08 |................|
|
|00000020| 00 0a 00 10 00 11 00 12 |........ |
|
+--------+-------------------------------------------------+----------------+
|
|
|
16:04:09 DEBUG [com.couchbase.io:430] [com.couchbase.io][FeaturesNegotiatedEvent][12557µs] Negotiated [MUTATION_SEQNO, XATTR, XERROR, SELECT_BUCKET, SNAPPY, ALT_REQUEST, SYNC_REPLICATION, COLLECTIONS]
|
After collections is negotiated, the client performs a select bucket against a memcached bucket, and the server returns with an error:
+-------------------------------------------------+
|
| 0 1 2 3 4 5 6 7 8 9 a b c d e f |
|
+--------+-------------------------------------------------+----------------+
|
|00000000| 80 89 00 05 00 00 00 00 00 00 00 05 00 00 00 06 |................|
|
|00000010| 00 00 00 00 00 00 00 00 63 61 63 68 65 |........cache |
|
+--------+-------------------------------------------------+----------------+
|
|
+-------------------------------------------------+
|
| 0 1 2 3 4 5 6 7 8 9 a b c d e f |
|
+--------+-------------------------------------------------+----------------+
|
|00000000| 81 89 00 00 00 00 00 83 00 00 00 47 00 00 00 06 |...........G....|
|
|00000010| 00 00 00 00 00 00 00 00 7b 22 65 72 72 6f 72 22 |........{"error"|
|
|00000020| 3a 7b 22 63 6f 6e 74 65 78 74 22 3a 22 44 65 73 |:{"context":"Des|
|
|00000030| 74 69 6e 61 74 69 6f 6e 20 62 75 63 6b 65 74 20 |tination bucket |
|
|00000040| 64 6f 65 73 20 6e 6f 74 20 73 75 70 70 6f 72 74 |does not support|
|
|00000050| 20 63 6f 6c 6c 65 63 74 69 6f 6e 73 22 7d 7d | collections"}} |
|
+--------+-------------------------------------------------+----------------+
|
How should the SDKs handle this situation if it's not a server bug?
Attachments
Issue Links
- relates to
-
MB-37982 Unable to select Memcached buckets via 3.0 SDKs on CC
- Closed