Orleans: How to use SystemStoreType ="PostgreSQL" in SystemStore

Created on 19 Aug 2016  Â·  8Comments  Â·  Source: dotnet/orleans

none?

Most helpful comment

I've been working on a Npgsql implementation. This is where I'm at at the moment. (it seems to work for me)

OrleansTables_postgres.txt

FYI, InsertMembershipKey is changing, so this script works for v1.2.3.

All 8 comments

@sundong1982 It is a regrettable naming problem. SystemStore="SqlServer" should really be SystemStore="AdoNet". It will be likely changed in the 2.0 release when backwards incompatible changes are more OK.

In your example case the connection string would be "DataConnectionString="Server=127.0.0.1;Port=5432;Database=myDataBase;Userid=myUsername;Password=myPassword;Protocol=3;Pooling=true;MinPoolSize=1;MaxPoolSize=20;ConnectionLifeTime=15; AdoInvariant="Npgsql" /"

Take a note of th last _AdoInvariant="Npgsql"_. This tells Orleans which ADO.NET libraries to load and use. For more information at http://dotnet.github.io/orleans/Advanced-Concepts/Configuring-SQL-Tables.

Currently there is a database deployment script only for SQL Server and MySQL. If you have the time and inclination, take a look at https://github.com/dotnet/orleans/tree/master/src/OrleansSQLUtils. The scripts are there and you should get going by translating a PostgreSQL specific version of them. We have exhaustive tests and can help you checking progress incrementally if you wish work on this. You don't have to, but I mention just in case. Eventually someone gets there, I've thought about it myself too. :)

We could add an alias between "adonet" and "sqlserver"

On 20 Aug 2016 12:59 AM, "Veikko Eeva" [email protected] wrote:

@sundong1982 https://github.com/sundong1982 It is a regrettable naming
problem. SystemStore="SqlServer" should really be SystemStore="AdoNet".
It will be likely changed in the 2.0 release when backwards incompatible
changes are more OK.

In your example case the connection string would be
"DataConnectionString="Server=127.0.0.1;Port=5432;Database=
myDataBase;Userid=myUsername;Password=myPassword;Protocol=
3;Pooling=true;MinPoolSize=1;MaxPoolSize=20;ConnectionLifeTime=15;
AdoInvariant="Npgsql" /"

Take a note of th last _AdoInvariant="Npgsql"_. This tells Orleans which
ADO.NET libraries to load and use. For more information at
http://dotnet.github.io/orleans/Advanced-Concepts/Configuring-SQL-Tables.

Currently there is a database deployment script only for SQL Server and
MySQL. If you have the time and inclination, take a look at
https://github.com/dotnet/orleans/tree/master/src/OrleansSQLUtils. The
scripts are there and you should get going by translating a PostgreSQL
specific version of them. We have exhaustive tests and can help you
checking progress incrementally if you wish work on this. You don't have
to, but I mention just in case. Eventually someone gets there, I've thought
about it myself too. :)

—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/dotnet/orleans/issues/2079#issuecomment-241042024,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAMcPzAlE8PXjBHiD3Or9Y1yZLHZ0xdTks5qhcS4gaJpZM4Joi4Z
.

@ReubenBond That is a splendid idea. We could do that and add appropriate deprecation warning(s).

I've been working on a Npgsql implementation. This is where I'm at at the moment. (it seems to work for me)

OrleansTables_postgres.txt

FYI, InsertMembershipKey is changing, so this script works for v1.2.3.

This would be a great contribution. If you need help in plugging it in to the test framework, just open a new PR and ping me or @shayhatsor. We might be absent for a while, but appear eventually. :)

thx all :)

Resolved via #2113.

Was this page helpful?
0 / 5 - 0 ratings