scylladb / cpp-driver

Scylla C/C++ Driver
25 stars 25 forks source link

[datatype] fix equals method for udt datatypes across schema upgrades #63

Closed jul-stas closed 2 years ago

jul-stas commented 2 years ago

This is a cherry-pick from https://github.com/datastax/cpp-driver/pull/531. Original description:

We encountered a bug with this driver, where an altered UDT would cause cass_statement_bind_user_type_by_name_n to fail on a prepared statement that was prepared prior to the db altered.

I think that this should be a sensible fix, it for sure fixes our issue... however, I have no idea if this is actually sound!

Unfortunately I do not have a C++ reproducer for this bug, since we use the rust wrapper to this driver, that reproducer is here: https://gist.github.com/jhgg/d009d1fb994a0fd550bd01bb803baee5