Skip to content
This repository has been archived by the owner on Nov 26, 2021. It is now read-only.

CockroachDB 19.2 incompatibility #3

Open
damboscolo opened this issue May 5, 2020 · 3 comments
Open

CockroachDB 19.2 incompatibility #3

damboscolo opened this issue May 5, 2020 · 3 comments

Comments

@damboscolo
Copy link

damboscolo commented May 5, 2020

Hello, I had a crash when CockroachDB updates its version from 19.1 to 19.2, I got this error:

{ “error”: { ... }, “log”: “GenServer #PID<0.4252.0> terminating
** (DBConnection.ConnectionError) client #PID<0.7469.0> stopped: ** (MatchError) no match of right hand side value: <<0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 4, 19, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0, 32, 51, 51, 51, 56, 48, 50, 100, 99, 48, 101, 102, 98, 50, 98, 49, 101, 99, 102, 101, 100, 50, 50, 101, 52, 50, 55, ...>>
    (postgrex) lib/postgrex/type_module.ex:897: Postgrex.DefaultTypes.“Elixir.Postgrex.Extensions.Array”/8
    (postgrex) lib/postgrex/protocol.ex:2866: Postgrex.Protocol.rows_recv/4
    (postgrex) lib/postgrex/protocol.ex:1895: Postgrex.Protocol.recv_execute/5
    (postgrex) lib/postgrex/protocol.ex:1769: Postgrex.Protocol.bind_execute/4
    (db_connection) lib/db_connection/holder.ex:293: DBConnection.Holder.holder_apply/4
    (db_connection) lib/db_connection.ex:1255: DBConnection.run_execute/5
    (db_connection) lib/db_connection.ex:1342: DBConnection.run/6
    (db_connection) lib/db_connection.ex:540: DBConnection.parsed_prepare_execute/5

I've saw that the issue that is the purpose of this fork were fixed on the 19.2.1 version cockroachdb/cockroach#32098 (comment), do you think this is the cause of the crash?

They rollbacked the version until I found a solution. Since CockroachDB will no longer support version 19.1, I have a few questions:

  1. Which version of CockroachDB do you work?
  2. Are you still using this lib? If not, which are you using now?

Thanks!

@tlvenn
Copy link
Member

tlvenn commented May 5, 2020

Hi @damboscolo,

I noticed the same as well and we are sticking with 19.1 for the time being. The fix for the timestamp precision did not roll into the 19.2 branch unfortunately but will be part of their 20.1 release which should be imminent now.

So my idea was to wait for the 20.1 release and check what is going on. Now that you reminded me of this, I will actually get their latest beta and test it out so that if there is a regression on their side it could hopefully be fixed for their 20.1 release.

The great news with their 20.1 release is that they support user savepoints now which means my custom ecto sandbox should not be needed anymore as well.

@damboscolo
Copy link
Author

Thank you for the answer @tlvenn

let me know if there is an update!

@tlvenn
Copy link
Member

tlvenn commented Jul 13, 2020

Hi @damboscolo ,

I finally had a chance to test this with CDB 20.1 hoping all things would just work outside of the box but ya this issue is still there unfortunately and so it seems a regression has been introduced with the 19.2 when decoding arrays using the binary protocol.

I have reported it on their side here: cockroachdb/cockroach#51360

Also for the record, there is another issue currently with the 20.1 that is blocking when running tests directly with the bundled sandbox which is now fixed and will be released with 20.2 and backported as well.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants