crate / crate-npgsql

A plugin that provides extensions to Npgsql which enable usage of Npgsql as a .NET data provider for CrateDB.
Apache License 2.0
11 stars 5 forks source link

Npgsql Upstream Progress #4

Open WalternativE opened 6 years ago

WalternativE commented 6 years ago

Hi, I just wondered if there is any way to assist you to get the Crate compat mode into the upstream npgsql driver. Is there an issue where I can weigh in or any other way to help with the progress (code, testing, etc)?

joemoe commented 6 years ago

hi @WalternativE, we are working closely with @roji to get that into the next release. see https://github.com/npgsql/npgsql/pull/1660 we are working on splitting up the pr and fixing the last tests. i will talk to @apircher on monday and we will let you know if there is something we could use a helping hand for.

WalternativE commented 6 years ago

Wonderful! I'll follow this issue. If there is something just let me know. We're currently working on a project at work so I'd even get a good amount of company dev time for this ;)

WalternativE commented 6 years ago

Sorry for bothering you again but @apircher mentioned a plugin compatible with npgsql/npgsql#1486 - which apparently already works very well. Is this developed in the open and can one have a look on it?

joemoe commented 6 years ago

actually the repo we are discussing in is the plugin. the npgsql changes are in https://github.com/pircher-software/npgsql.

WalternativE commented 6 years ago

Ok, I assume my thinking is wrong. The way I read it the plugin changes which enable the crate compability were commited a month ago which lead to a significant change in the current state of the project which is currently under test. Is this not the case? Or am I just looking at the wrong place? I'm currently looking at the crate-dev branch of the npgsql fork as well as the dev branch of npgsql-cratedb.

apircher commented 6 years ago

Hi @WalternativE thank you very much for offering your help! We just started catching up with the latest changes of @roji a few days ago. New commits will arive soon - no later than monday. (didnt want to push with red tests...)

Testing and giving feedback is of course always highly desired. And as more issues come in we could surely use help with coding too!

WalternativE commented 6 years ago

Cool! Thank you very much for the response and your work :)

hlngo commented 6 years ago

May I ask for progress on this one?

WalternativE commented 6 years ago

From our experience the state in this repository already works. If you want to test it yourself I suggest that you clone the repository (including the git sub repository), build the solution and use the libraries. We are using crate and PostgreSQL in parallel and it appears to work well (we haven't had time to test it to the max yet). I assume the whole thing will be production ready when the newest npgsql library is officially released (I think the latest preview might work but I'm not totally sure).

If you have problems using the locally build libraries (because 'just' including .NET standard libs in a project is kind of a hassle) I suggest to try a local nuget feed (just a folder containing the nugets - you can point VS to it and it will treat it as you would expect).

hlngo commented 6 years ago

@WalternativE Thanks for the info. I will try it. You have any idea when this one will be merged upstream to npgsql?

apircher commented 6 years ago

@hlngo It won't. This repo contains the npgsql-plugin for CrateDB and that will stay separate. This plugin used to depend on a fork of npgsql which contained some necessary changes. In the meantime the changes in that fork have been merged upstream.

hlngo commented 6 years ago

@apircher Does that mean I can use this repo with the latest npgsql build?

apircher commented 6 years ago

@hIngo To be honest, I have not tested the npgsql commits of the last two weeks - but basically yes.

Hingo commented 6 years ago

@hlngo comment for you... @apircher : Incorrect tag.

hlngo commented 6 years ago

@Hingo Thanks. @apircher @WalternativE I can use this crate driver with the embedded npgsql. The latest npgsql nuget (02/27/18) doesn't work with this driver. I will try again with the next npgsql release.

mfussenegger commented 4 years ago

With CrateDB 4.2, basic functionality of the stock npgsql driver works as well (as seen here https://github.com/crate/crate-qa/blob/master/tests/client_tests/stock_npgsql/Program.cs ) .

So the forked version here may not be required anymore. If any of you could test it out and report back how it worked, that would be helpful and we could consider to phase out the forked version in favour of going with the upstream version.