<div>Wilm,</div><div> </div><div>For different developers to begin some "adoptation" there should be a clear "Breaking changes" record in Postgres version history.</div><div> </div><div>For now we consider it bug (worked before, not working now), that should be just fixed...</div><div> </div><div>-- <br />С уважением, Павел</div><div> </div><div> </div><div> </div><div>12.08.2020, 13:57, "Wilm Hoyer" <w(dot)hoyer(at)dental-vision(dot)de>:</div><blockquote><div lang="DE"><div><p style="font-family:'calibri' , sans-serif;font-size:11pt;margin:0cm"> </p><div><p style="font-family:'calibri' , sans-serif;font-size:11pt;margin:0cm">> Wilm,</p></div><div><p style="font-family:'calibri' , sans-serif;font-size:11pt;margin:0cm"> </p></div><div><p style="font-family:'calibri' , sans-serif;font-size:11pt;margin:0cm">> Have a look, there is even an extension method for xmin (stable branch):</p></div><div><p style="font-family:'calibri' , sans-serif;font-size:11pt;margin:0cm"> </p></div><div><p style="font-family:'calibri' , sans-serif;font-size:11pt;margin:0cm">> <a href="https://github.com/npgsql/efcore.pg/blob/stable/src/EFCore.PG/Extensions/NpgsqlEntityTypeBuilderExtensions.cs"> https://github.com/npgsql/efcore.pg/blob/stable/src/EFCore.PG/Extensions/NpgsqlEntityTypeBuilderExtensions.cs</a></p></div><div><p style="font-family:'calibri' , sans-serif;font-size:11pt;margin:0cm"> </p></div><div><p style="font-family:'calibri' , sans-serif;font-size:11pt;margin:0cm">> EF Core is mostly independent from DB, but there usually are some "tweaks" for each database that you should know (like for SQL server the native concurrency token should be like byte[]:</p><ol type="1" style="margin-bottom:0cm;margin-top:0cm"><li style="box-sizing:border-box;color:#333333;font-family:'calibri' , sans-serif;font-size:11pt;margin:0cm"><code style="font-family:'courier new'"><span style="background:#f9f9f9;color:#666600;font-family:'consolas';font-size:10pt">[</span><span style="background:#f9f9f9;color:#555555;font-family:'consolas';font-size:10pt">TimeStamp</span><span style="background:#f9f9f9;color:#666600;font-family:'consolas';font-size:10pt">]</span></code></li><li style="background:#f9f9f9;box-sizing:border-box;color:#333333;font-family:'calibri' , sans-serif;font-size:11pt;margin:0cm"><code style="font-family:'courier new'"><span style="background:#f9f9f9;color:blue;font-family:'consolas';font-size:10pt">public</span><span style="background:#f9f9f9;color:black;font-family:'consolas';font-size:10pt"> </span><span style="background:#f9f9f9;color:blue;font-family:'consolas';font-size:10pt">byte</span><span style="background:#f9f9f9;color:#666600;font-family:'consolas';font-size:10pt">[]</span><span style="background:#f9f9f9;color:black;font-family:'consolas';font-size:10pt"> </span><span style="background:#f9f9f9;color:#555555;font-family:'consolas';font-size:10pt">RowVersion</span><span style="background:#f9f9f9;color:black;font-family:'consolas';font-size:10pt"> </span><span style="background:#f9f9f9;color:#666600;font-family:'consolas';font-size:10pt">{<!-- --></span><span style="background:#f9f9f9;color:black;font-family:'consolas';font-size:10pt"> </span><span style="background:#f9f9f9;color:blue;font-family:'consolas';font-size:10pt">get</span><span style="background:#f9f9f9;color:#666600;font-family:'consolas';font-size:10pt">;</span><span style="background:#f9f9f9;color:black;font-family:'consolas';font-size:10pt"> </span><span style="background:#f9f9f9;color:blue;font-family:'consolas';font-size:10pt">set</span><span style="background:#f9f9f9;color:#666600;font-family:'consolas';font-size:10pt">;</span><span style="background:#f9f9f9;color:black;font-family:'consolas';font-size:10pt"> </span><span style="background:#f9f9f9;color:#666600;font-family:'consolas';font-size:10pt">}</span></code></li><li style="background:#f9f9f9;box-sizing:border-box;color:#333333;font-family:'calibri' , sans-serif;font-size:11pt;margin:0cm"><code style="font-family:'courier new'"><span style="background:#f9f9f9;color:#666600;font-family:'consolas';font-size:10pt">)</span></code></li></ol></div><div><p style="font-family:'calibri' , sans-serif;font-size:11pt;margin:0cm"> </p></div><div><p style="font-family:'calibri' , sans-serif;font-size:11pt;margin:0cm">> Additional "self defined column" for billion rows tables leads to additional space needed. We use partitioning when the tables are LARGE :)</p></div><div><p style="font-family:'calibri' , sans-serif;font-size:11pt;margin:0cm"> </p></div><div><p style="font-family:'calibri' , sans-serif;font-size:11pt;margin:0cm">> This works fine in 10, 11, it's strange it is broken in 12 (from db users point of view, I haven't examined the sources of PG for internals...)</p></div><div><p style="font-family:'calibri' , sans-serif;font-size:11pt;margin:0cm"> </p></div><div><p style="font-family:'calibri' , sans-serif;font-size:11pt;margin:0cm">Sorry, i had not looked into the extension since it is not part of core npgsql. As it states: Npgsql.EntityFrameworkCore.PostgreSQL is an Entity Framework Core provider built on top of <a href="https://github.com/npgsql/npgsql">Npgsql</a>. (and we left npgsql before this extension was started).</p><p style="font-family:'calibri' , sans-serif;font-size:11pt;margin:0cm">I guess it would be easy for them to implement a solution, because that basically means adopting the relevant part from the EF SqlServer implementation. But i fear you’re out of luck with them, as support for table partitioning is still an open issue in their project.</p><p style="font-family:'calibri' , sans-serif;font-size:11pt;margin:0cm"> </p><p style="font-family:'calibri' , sans-serif;font-size:11pt;margin:0cm">Best regards</p><p style="font-family:'calibri' , sans-serif;font-size:11pt;margin:0cm">Wilm.</p></div></div></div></blockquote>