diff --git a/.github/workflows/auto-pgsql100-tests.yml b/.github/workflows/auto-pgsql100-tests.yml index 4def5f5e8..23479bfb7 100644 --- a/.github/workflows/auto-pgsql100-tests.yml +++ b/.github/workflows/auto-pgsql100-tests.yml @@ -17,9 +17,9 @@ on: - 'Orm/Xtensive.Orm/Orm/Upgrade/**' - 'Orm/Xtensive.Orm/Sql/**' # provider - - 'Orm/Xtensive.Orm.MySql/**' - - '!Orm/Xtensive.Orm.MySql/**.csproj' - - '!Orm/Xtensive.Orm.MySql/NuGetContent/**' + - 'Orm/Xtensive.Orm.PostgreSql/**' + - '!Orm/Xtensive.Orm.PostgreSql/**.csproj' + - '!Orm/Xtensive.Orm.PostgreSql/NuGetContent/**' # main test project - any code change - 'Orm/Xtensive.Orm.Tests/Issues/**' - 'Orm/Xtensive.Orm.Tests/Storage/**' @@ -51,9 +51,9 @@ on: - 'Orm/Xtensive.Orm/Orm/Upgrade/**' - 'Orm/Xtensive.Orm/Sql/**' # provider - - 'Orm/Xtensive.Orm.MySql/**' - - '!Orm/Xtensive.Orm.MySql/**.csproj' - - '!Orm/Xtensive.Orm.MySql/NuGetContent/**' + - 'Orm/Xtensive.Orm.PostgreSql/**' + - '!Orm/Xtensive.Orm.PostgreSql/**.csproj' + - '!Orm/Xtensive.Orm.PostgreSql/NuGetContent/**' # main test project - any code change - 'Orm/Xtensive.Orm.Tests/Issues/**' - 'Orm/Xtensive.Orm.Tests/Storage/**' @@ -85,9 +85,9 @@ on: - 'Orm/Xtensive.Orm/Orm/Upgrade/**' - 'Orm/Xtensive.Orm/Sql/**' # provider - - 'Orm/Xtensive.Orm.MySql/**' - - '!Orm/Xtensive.Orm.MySql/**.csproj' - - '!Orm/Xtensive.Orm.MySql/NuGetContent/**' + - 'Orm/Xtensive.Orm.PostgreSql/**' + - '!Orm/Xtensive.Orm.PostgreSql/**.csproj' + - '!Orm/Xtensive.Orm.PostgreSql/NuGetContent/**' # main test project - any code change - 'Orm/Xtensive.Orm.Tests/Issues/**' - 'Orm/Xtensive.Orm.Tests/Storage/**' diff --git a/.github/workflows/auto-pgsql110-tests.yml b/.github/workflows/auto-pgsql110-tests.yml index a55775a8e..7d139f15b 100644 --- a/.github/workflows/auto-pgsql110-tests.yml +++ b/.github/workflows/auto-pgsql110-tests.yml @@ -17,9 +17,9 @@ on: - 'Orm/Xtensive.Orm/Orm/Upgrade/**' - 'Orm/Xtensive.Orm/Sql/**' # provider - - 'Orm/Xtensive.Orm.MySql/**' - - '!Orm/Xtensive.Orm.MySql/**.csproj' - - '!Orm/Xtensive.Orm.MySql/NuGetContent/**' + - 'Orm/Xtensive.Orm.PostgreSql/**' + - '!Orm/Xtensive.Orm.PostgreSql/**.csproj' + - '!Orm/Xtensive.Orm.PostgreSql/NuGetContent/**' # main test project - any code change - 'Orm/Xtensive.Orm.Tests/Issues/**' - 'Orm/Xtensive.Orm.Tests/Storage/**' @@ -51,9 +51,9 @@ on: - 'Orm/Xtensive.Orm/Orm/Upgrade/**' - 'Orm/Xtensive.Orm/Sql/**' # provider - - 'Orm/Xtensive.Orm.MySql/**' - - '!Orm/Xtensive.Orm.MySql/**.csproj' - - '!Orm/Xtensive.Orm.MySql/NuGetContent/**' + - 'Orm/Xtensive.Orm.PostgreSql/**' + - '!Orm/Xtensive.Orm.PostgreSql/**.csproj' + - '!Orm/Xtensive.Orm.PostgreSql/NuGetContent/**' # main test project - any code change - 'Orm/Xtensive.Orm.Tests/Issues/**' - 'Orm/Xtensive.Orm.Tests/Storage/**' @@ -85,9 +85,9 @@ on: - 'Orm/Xtensive.Orm/Orm/Upgrade/**' - 'Orm/Xtensive.Orm/Sql/**' # provider - - 'Orm/Xtensive.Orm.MySql/**' - - '!Orm/Xtensive.Orm.MySql/**.csproj' - - '!Orm/Xtensive.Orm.MySql/NuGetContent/**' + - 'Orm/Xtensive.Orm.PostgreSql/**' + - '!Orm/Xtensive.Orm.PostgreSql/**.csproj' + - '!Orm/Xtensive.Orm.PostgreSql/NuGetContent/**' # main test project - any code change - 'Orm/Xtensive.Orm.Tests/Issues/**' - 'Orm/Xtensive.Orm.Tests/Storage/**' diff --git a/.github/workflows/auto-pgsql120-tests.yml b/.github/workflows/auto-pgsql120-tests.yml index 3197c06c6..88eeebc02 100644 --- a/.github/workflows/auto-pgsql120-tests.yml +++ b/.github/workflows/auto-pgsql120-tests.yml @@ -17,9 +17,9 @@ on: - 'Orm/Xtensive.Orm/Orm/Upgrade/**' - 'Orm/Xtensive.Orm/Sql/**' # provider - - 'Orm/Xtensive.Orm.MySql/**' - - '!Orm/Xtensive.Orm.MySql/**.csproj' - - '!Orm/Xtensive.Orm.MySql/NuGetContent/**' + - 'Orm/Xtensive.Orm.PostgreSql/**' + - '!Orm/Xtensive.Orm.PostgreSql/**.csproj' + - '!Orm/Xtensive.Orm.PostgreSql/NuGetContent/**' # main test project - any code change - 'Orm/Xtensive.Orm.Tests/Issues/**' - 'Orm/Xtensive.Orm.Tests/Storage/**' @@ -51,9 +51,9 @@ on: - 'Orm/Xtensive.Orm/Orm/Upgrade/**' - 'Orm/Xtensive.Orm/Sql/**' # provider - - 'Orm/Xtensive.Orm.MySql/**' - - '!Orm/Xtensive.Orm.MySql/**.csproj' - - '!Orm/Xtensive.Orm.MySql/NuGetContent/**' + - 'Orm/Xtensive.Orm.PostgreSql/**' + - '!Orm/Xtensive.Orm.PostgreSql/**.csproj' + - '!Orm/Xtensive.Orm.PostgreSql/NuGetContent/**' # main test project - any code change - 'Orm/Xtensive.Orm.Tests/Issues/**' - 'Orm/Xtensive.Orm.Tests/Storage/**' @@ -85,9 +85,9 @@ on: - 'Orm/Xtensive.Orm/Orm/Upgrade/**' - 'Orm/Xtensive.Orm/Sql/**' # provider - - 'Orm/Xtensive.Orm.MySql/**' - - '!Orm/Xtensive.Orm.MySql/**.csproj' - - '!Orm/Xtensive.Orm.MySql/NuGetContent/**' + - 'Orm/Xtensive.Orm.PostgreSql/**' + - '!Orm/Xtensive.Orm.PostgreSql/**.csproj' + - '!Orm/Xtensive.Orm.PostgreSql/NuGetContent/**' # main test project - any code change - 'Orm/Xtensive.Orm.Tests/Issues/**' - 'Orm/Xtensive.Orm.Tests/Storage/**' diff --git a/.github/workflows/auto-pgsql130-tests.yml b/.github/workflows/auto-pgsql130-tests.yml index 45c7d70de..ad6934f86 100644 --- a/.github/workflows/auto-pgsql130-tests.yml +++ b/.github/workflows/auto-pgsql130-tests.yml @@ -17,9 +17,9 @@ on: - 'Orm/Xtensive.Orm/Orm/Upgrade/**' - 'Orm/Xtensive.Orm/Sql/**' # provider - - 'Orm/Xtensive.Orm.MySql/**' - - '!Orm/Xtensive.Orm.MySql/**.csproj' - - '!Orm/Xtensive.Orm.MySql/NuGetContent/**' + - 'Orm/Xtensive.Orm.PostgreSql/**' + - '!Orm/Xtensive.Orm.PostgreSql/**.csproj' + - '!Orm/Xtensive.Orm.PostgreSql/NuGetContent/**' # main test project - any code change - 'Orm/Xtensive.Orm.Tests/Issues/**' - 'Orm/Xtensive.Orm.Tests/Storage/**' @@ -51,9 +51,9 @@ on: - 'Orm/Xtensive.Orm/Orm/Upgrade/**' - 'Orm/Xtensive.Orm/Sql/**' # provider - - 'Orm/Xtensive.Orm.MySql/**' - - '!Orm/Xtensive.Orm.MySql/**.csproj' - - '!Orm/Xtensive.Orm.MySql/NuGetContent/**' + - 'Orm/Xtensive.Orm.PostgreSql/**' + - '!Orm/Xtensive.Orm.PostgreSql/**.csproj' + - '!Orm/Xtensive.Orm.PostgreSql/NuGetContent/**' # main test project - any code change - 'Orm/Xtensive.Orm.Tests/Issues/**' - 'Orm/Xtensive.Orm.Tests/Storage/**' @@ -85,9 +85,9 @@ on: - 'Orm/Xtensive.Orm/Orm/Upgrade/**' - 'Orm/Xtensive.Orm/Sql/**' # provider - - 'Orm/Xtensive.Orm.MySql/**' - - '!Orm/Xtensive.Orm.MySql/**.csproj' - - '!Orm/Xtensive.Orm.MySql/NuGetContent/**' + - 'Orm/Xtensive.Orm.PostgreSql/**' + - '!Orm/Xtensive.Orm.PostgreSql/**.csproj' + - '!Orm/Xtensive.Orm.PostgreSql/NuGetContent/**' # main test project - any code change - 'Orm/Xtensive.Orm.Tests/Issues/**' - 'Orm/Xtensive.Orm.Tests/Storage/**' diff --git a/.github/workflows/auto-pgsql150-tests.yml b/.github/workflows/auto-pgsql150-tests.yml index b90cab88c..55959a4a9 100644 --- a/.github/workflows/auto-pgsql150-tests.yml +++ b/.github/workflows/auto-pgsql150-tests.yml @@ -17,9 +17,9 @@ on: - 'Orm/Xtensive.Orm/Orm/Upgrade/**' - 'Orm/Xtensive.Orm/Sql/**' # provider - - 'Orm/Xtensive.Orm.MySql/**' - - '!Orm/Xtensive.Orm.MySql/**.csproj' - - '!Orm/Xtensive.Orm.MySql/NuGetContent/**' + - 'Orm/Xtensive.Orm.PostgreSql/**' + - '!Orm/Xtensive.Orm.PostgreSql/**.csproj' + - '!Orm/Xtensive.Orm.PostgreSql/NuGetContent/**' # main test project - any code change - 'Orm/Xtensive.Orm.Tests/Issues/**' - 'Orm/Xtensive.Orm.Tests/Storage/**' @@ -51,9 +51,9 @@ on: - 'Orm/Xtensive.Orm/Orm/Upgrade/**' - 'Orm/Xtensive.Orm/Sql/**' # provider - - 'Orm/Xtensive.Orm.MySql/**' - - '!Orm/Xtensive.Orm.MySql/**.csproj' - - '!Orm/Xtensive.Orm.MySql/NuGetContent/**' + - 'Orm/Xtensive.Orm.PostgreSql/**' + - '!Orm/Xtensive.Orm.PostgreSql/**.csproj' + - '!Orm/Xtensive.Orm.PostgreSql/NuGetContent/**' # main test project - any code change - 'Orm/Xtensive.Orm.Tests/Issues/**' - 'Orm/Xtensive.Orm.Tests/Storage/**' @@ -85,9 +85,9 @@ on: - 'Orm/Xtensive.Orm/Orm/Upgrade/**' - 'Orm/Xtensive.Orm/Sql/**' # provider - - 'Orm/Xtensive.Orm.MySql/**' - - '!Orm/Xtensive.Orm.MySql/**.csproj' - - '!Orm/Xtensive.Orm.MySql/NuGetContent/**' + - 'Orm/Xtensive.Orm.PostgreSql/**' + - '!Orm/Xtensive.Orm.PostgreSql/**.csproj' + - '!Orm/Xtensive.Orm.PostgreSql/NuGetContent/**' # main test project - any code change - 'Orm/Xtensive.Orm.Tests/Issues/**' - 'Orm/Xtensive.Orm.Tests/Storage/**' diff --git a/.github/workflows/auto-pgsql160-tests.yml b/.github/workflows/auto-pgsql160-tests.yml index 0d576a2d8..08bf938da 100644 --- a/.github/workflows/auto-pgsql160-tests.yml +++ b/.github/workflows/auto-pgsql160-tests.yml @@ -17,9 +17,9 @@ on: - 'Orm/Xtensive.Orm/Orm/Upgrade/**' - 'Orm/Xtensive.Orm/Sql/**' # provider - - 'Orm/Xtensive.Orm.MySql/**' - - '!Orm/Xtensive.Orm.MySql/**.csproj' - - '!Orm/Xtensive.Orm.MySql/NuGetContent/**' + - 'Orm/Xtensive.Orm.PostgreSql/**' + - '!Orm/Xtensive.Orm.PostgreSql/**.csproj' + - '!Orm/Xtensive.Orm.PostgreSql/NuGetContent/**' # main test project - any code change - 'Orm/Xtensive.Orm.Tests/Issues/**' - 'Orm/Xtensive.Orm.Tests/Storage/**' @@ -51,9 +51,9 @@ on: - 'Orm/Xtensive.Orm/Orm/Upgrade/**' - 'Orm/Xtensive.Orm/Sql/**' # provider - - 'Orm/Xtensive.Orm.MySql/**' - - '!Orm/Xtensive.Orm.MySql/**.csproj' - - '!Orm/Xtensive.Orm.MySql/NuGetContent/**' + - 'Orm/Xtensive.Orm.PostgreSql/**' + - '!Orm/Xtensive.Orm.PostgreSql/**.csproj' + - '!Orm/Xtensive.Orm.PostgreSql/NuGetContent/**' # main test project - any code change - 'Orm/Xtensive.Orm.Tests/Issues/**' - 'Orm/Xtensive.Orm.Tests/Storage/**' @@ -85,9 +85,9 @@ on: - 'Orm/Xtensive.Orm/Orm/Upgrade/**' - 'Orm/Xtensive.Orm/Sql/**' # provider - - 'Orm/Xtensive.Orm.MySql/**' - - '!Orm/Xtensive.Orm.MySql/**.csproj' - - '!Orm/Xtensive.Orm.MySql/NuGetContent/**' + - 'Orm/Xtensive.Orm.PostgreSql/**' + - '!Orm/Xtensive.Orm.PostgreSql/**.csproj' + - '!Orm/Xtensive.Orm.PostgreSql/NuGetContent/**' # main test project - any code change - 'Orm/Xtensive.Orm.Tests/Issues/**' - 'Orm/Xtensive.Orm.Tests/Storage/**' diff --git a/.github/workflows/auto-pgsql170-tests.yml b/.github/workflows/auto-pgsql170-tests.yml index d2e6520bf..4d550dc71 100644 --- a/.github/workflows/auto-pgsql170-tests.yml +++ b/.github/workflows/auto-pgsql170-tests.yml @@ -28,9 +28,9 @@ on: - 'Orm/Xtensive.Orm/Reflection/**' - 'Orm/Xtensive.Orm/Sql/**' # provider - - 'Orm/Xtensive.Orm.MySql/**' - - '!Orm/Xtensive.Orm.MySql/**.csproj' - - '!Orm/Xtensive.Orm.MySql/NuGetContent/**' + - 'Orm/Xtensive.Orm.PostgreSql/**' + - '!Orm/Xtensive.Orm.PostgreSql/**.csproj' + - '!Orm/Xtensive.Orm.PostgreSql/NuGetContent/**' # main test project - only most significant parts - 'Orm/Xtensive.Orm.Tests/Issues/**' - 'Orm/Xtensive.Orm.Tests/Storage/**' @@ -73,9 +73,9 @@ on: - 'Orm/Xtensive.Orm/Reflection/**' - 'Orm/Xtensive.Orm/Sql/**' # provider - - 'Orm/Xtensive.Orm.MySql/**' - - '!Orm/Xtensive.Orm.MySql/**.csproj' - - '!Orm/Xtensive.Orm.MySql/NuGetContent/**' + - 'Orm/Xtensive.Orm.PostgreSql/**' + - '!Orm/Xtensive.Orm.PostgreSql/**.csproj' + - '!Orm/Xtensive.Orm.PostgreSql/NuGetContent/**' # main test project - only most significant parts - 'Orm/Xtensive.Orm.Tests/Issues/**' - 'Orm/Xtensive.Orm.Tests/Storage/**' @@ -118,9 +118,9 @@ on: - 'Orm/Xtensive.Orm/Reflection/**' - 'Orm/Xtensive.Orm/Sql/**' # provider - - 'Orm/Xtensive.Orm.MySql/**' - - '!Orm/Xtensive.Orm.MySql/**.csproj' - - '!Orm/Xtensive.Orm.MySql/NuGetContent/**' + - 'Orm/Xtensive.Orm.PostgreSql/**' + - '!Orm/Xtensive.Orm.PostgreSql/**.csproj' + - '!Orm/Xtensive.Orm.PostgreSql/NuGetContent/**' # main test project - only most significant parts - 'Orm/Xtensive.Orm.Tests/Issues/**' - 'Orm/Xtensive.Orm.Tests/Storage/**' diff --git a/.github/workflows/auto-pgsql180-tests.yml b/.github/workflows/auto-pgsql180-tests.yml index e487d6559..089938a4a 100644 --- a/.github/workflows/auto-pgsql180-tests.yml +++ b/.github/workflows/auto-pgsql180-tests.yml @@ -17,9 +17,9 @@ on: - 'Orm/Xtensive.Orm/Orm/Upgrade/**' - 'Orm/Xtensive.Orm/Sql/**' # provider - - 'Orm/Xtensive.Orm.MySql/**' - - '!Orm/Xtensive.Orm.MySql/**.csproj' - - '!Orm/Xtensive.Orm.MySql/NuGetContent/**' + - 'Orm/Xtensive.Orm.PostgreSql/**' + - '!Orm/Xtensive.Orm.PostgreSql/**.csproj' + - '!Orm/Xtensive.Orm.PostgreSql/NuGetContent/**' # main test project - any code change - 'Orm/Xtensive.Orm.Tests/Issues/**' - 'Orm/Xtensive.Orm.Tests/Storage/**' @@ -51,9 +51,9 @@ on: - 'Orm/Xtensive.Orm/Orm/Upgrade/**' - 'Orm/Xtensive.Orm/Sql/**' # provider - - 'Orm/Xtensive.Orm.MySql/**' - - '!Orm/Xtensive.Orm.MySql/**.csproj' - - '!Orm/Xtensive.Orm.MySql/NuGetContent/**' + - 'Orm/Xtensive.Orm.PostgreSql/**' + - '!Orm/Xtensive.Orm.PostgreSql/**.csproj' + - '!Orm/Xtensive.Orm.PostgreSql/NuGetContent/**' # main test project - any code change - 'Orm/Xtensive.Orm.Tests/Issues/**' - 'Orm/Xtensive.Orm.Tests/Storage/**' @@ -85,9 +85,9 @@ on: - 'Orm/Xtensive.Orm/Orm/Upgrade/**' - 'Orm/Xtensive.Orm/Sql/**' # provider - - 'Orm/Xtensive.Orm.MySql/**' - - '!Orm/Xtensive.Orm.MySql/**.csproj' - - '!Orm/Xtensive.Orm.MySql/NuGetContent/**' + - 'Orm/Xtensive.Orm.PostgreSql/**' + - '!Orm/Xtensive.Orm.PostgreSql/**.csproj' + - '!Orm/Xtensive.Orm.PostgreSql/NuGetContent/**' # main test project - any code change - 'Orm/Xtensive.Orm.Tests/Issues/**' - 'Orm/Xtensive.Orm.Tests/Storage/**' diff --git a/.github/workflows/auto-pgsql91-tests.yml b/.github/workflows/auto-pgsql91-tests.yml index f838d0457..c5fb79863 100644 --- a/.github/workflows/auto-pgsql91-tests.yml +++ b/.github/workflows/auto-pgsql91-tests.yml @@ -17,9 +17,9 @@ on: - 'Orm/Xtensive.Orm/Orm/Upgrade/**' - 'Orm/Xtensive.Orm/Sql/**' # provider - - 'Orm/Xtensive.Orm.MySql/**' - - '!Orm/Xtensive.Orm.MySql/**.csproj' - - '!Orm/Xtensive.Orm.MySql/NuGetContent/**' + - 'Orm/Xtensive.Orm.PostgreSql/**' + - '!Orm/Xtensive.Orm.PostgreSql/**.csproj' + - '!Orm/Xtensive.Orm.PostgreSql/NuGetContent/**' # main test project - any code change - 'Orm/Xtensive.Orm.Tests/Issues/**' - 'Orm/Xtensive.Orm.Tests/Storage/**' @@ -51,9 +51,9 @@ on: - 'Orm/Xtensive.Orm/Orm/Upgrade/**' - 'Orm/Xtensive.Orm/Sql/**' # provider - - 'Orm/Xtensive.Orm.MySql/**' - - '!Orm/Xtensive.Orm.MySql/**.csproj' - - '!Orm/Xtensive.Orm.MySql/NuGetContent/**' + - 'Orm/Xtensive.Orm.PostgreSql/**' + - '!Orm/Xtensive.Orm.PostgreSql/**.csproj' + - '!Orm/Xtensive.Orm.PostgreSql/NuGetContent/**' # main test project - any code change - 'Orm/Xtensive.Orm.Tests/Issues/**' - 'Orm/Xtensive.Orm.Tests/Storage/**' @@ -85,9 +85,9 @@ on: - 'Orm/Xtensive.Orm/Orm/Upgrade/**' - 'Orm/Xtensive.Orm/Sql/**' # provider - - 'Orm/Xtensive.Orm.MySql/**' - - '!Orm/Xtensive.Orm.MySql/**.csproj' - - '!Orm/Xtensive.Orm.MySql/NuGetContent/**' + - 'Orm/Xtensive.Orm.PostgreSql/**' + - '!Orm/Xtensive.Orm.PostgreSql/**.csproj' + - '!Orm/Xtensive.Orm.PostgreSql/NuGetContent/**' # main test project - any code change - 'Orm/Xtensive.Orm.Tests/Issues/**' - 'Orm/Xtensive.Orm.Tests/Storage/**' diff --git a/.github/workflows/auto-pgsql92-tests.yml b/.github/workflows/auto-pgsql92-tests.yml index 26289aa96..9e912258a 100644 --- a/.github/workflows/auto-pgsql92-tests.yml +++ b/.github/workflows/auto-pgsql92-tests.yml @@ -17,10 +17,10 @@ on: - 'Orm/Xtensive.Orm/Orm/Upgrade/**' - 'Orm/Xtensive.Orm/Sql/**' # provider - - 'Orm/Xtensive.Orm.MySql/**' - - '!Orm/Xtensive.Orm.MySql/**.csproj' - - '!Orm/Xtensive.Orm.MySql/NuGetContent/**' - # main test project - any code change + - 'Orm/Xtensive.Orm.PostgreSql/**' + - '!Orm/Xtensive.Orm.PostgreSql/**.csproj' + - '!Orm/Xtensive.Orm.PostgreSql/NuGetContent/**' + # main test project - only most significant parts - 'Orm/Xtensive.Orm.Tests/Issues/**' - 'Orm/Xtensive.Orm.Tests/Storage/**' - 'Orm/Xtensive.Orm.Tests/Upgrade/**' @@ -51,10 +51,10 @@ on: - 'Orm/Xtensive.Orm/Orm/Upgrade/**' - 'Orm/Xtensive.Orm/Sql/**' # provider - - 'Orm/Xtensive.Orm.MySql/**' - - '!Orm/Xtensive.Orm.MySql/**.csproj' - - '!Orm/Xtensive.Orm.MySql/NuGetContent/**' - # main test project - any code change + - 'Orm/Xtensive.Orm.PostgreSql/**' + - '!Orm/Xtensive.Orm.PostgreSql/**.csproj' + - '!Orm/Xtensive.Orm.PostgreSql/NuGetContent/**' + # main test project - only most significant parts - 'Orm/Xtensive.Orm.Tests/Issues/**' - 'Orm/Xtensive.Orm.Tests/Storage/**' - 'Orm/Xtensive.Orm.Tests/Upgrade/**' @@ -85,10 +85,10 @@ on: - 'Orm/Xtensive.Orm/Orm/Upgrade/**' - 'Orm/Xtensive.Orm/Sql/**' # provider - - 'Orm/Xtensive.Orm.MySql/**' - - '!Orm/Xtensive.Orm.MySql/**.csproj' - - '!Orm/Xtensive.Orm.MySql/NuGetContent/**' - # main test project - any code change + - 'Orm/Xtensive.Orm.PostgreSql/**' + - '!Orm/Xtensive.Orm.PostgreSql/**.csproj' + - '!Orm/Xtensive.Orm.PostgreSql/NuGetContent/**' + # main test project - only most significant parts - 'Orm/Xtensive.Orm.Tests/Issues/**' - 'Orm/Xtensive.Orm.Tests/Storage/**' - 'Orm/Xtensive.Orm.Tests/Upgrade/**' diff --git a/.github/workflows/auto-pgsql96-tests.yml b/.github/workflows/auto-pgsql96-tests.yml index 5e8569db0..a4feead1f 100644 --- a/.github/workflows/auto-pgsql96-tests.yml +++ b/.github/workflows/auto-pgsql96-tests.yml @@ -28,9 +28,9 @@ on: - 'Orm/Xtensive.Orm/Reflection/**' - 'Orm/Xtensive.Orm/Sql/**' # provider - - 'Orm/Xtensive.Orm.MySql/**' - - '!Orm/Xtensive.Orm.MySql/**.csproj' - - '!Orm/Xtensive.Orm.MySql/NuGetContent/**' + - 'Orm/Xtensive.Orm.PostgreSql/**' + - '!Orm/Xtensive.Orm.PostgreSql/**.csproj' + - '!Orm/Xtensive.Orm.PostgreSql/NuGetContent/**' # main test project - only most significant parts - 'Orm/Xtensive.Orm.Tests/Issues/**' - 'Orm/Xtensive.Orm.Tests/Storage/**' @@ -73,9 +73,9 @@ on: - 'Orm/Xtensive.Orm/Reflection/**' - 'Orm/Xtensive.Orm/Sql/**' # provider - - 'Orm/Xtensive.Orm.MySql/**' - - '!Orm/Xtensive.Orm.MySql/**.csproj' - - '!Orm/Xtensive.Orm.MySql/NuGetContent/**' + - 'Orm/Xtensive.Orm.PostgreSql/**' + - '!Orm/Xtensive.Orm.PostgreSql/**.csproj' + - '!Orm/Xtensive.Orm.PostgreSql/NuGetContent/**' # main test project - only most significant parts - 'Orm/Xtensive.Orm.Tests/Issues/**' - 'Orm/Xtensive.Orm.Tests/Storage/**' @@ -118,9 +118,9 @@ on: - 'Orm/Xtensive.Orm/Reflection/**' - 'Orm/Xtensive.Orm/Sql/**' # provider - - 'Orm/Xtensive.Orm.MySql/**' - - '!Orm/Xtensive.Orm.MySql/**.csproj' - - '!Orm/Xtensive.Orm.MySql/NuGetContent/**' + - 'Orm/Xtensive.Orm.PostgreSql/**' + - '!Orm/Xtensive.Orm.PostgreSql/**.csproj' + - '!Orm/Xtensive.Orm.PostgreSql/NuGetContent/**' # main test project - only most significant parts - 'Orm/Xtensive.Orm.Tests/Issues/**' - 'Orm/Xtensive.Orm.Tests/Storage/**' diff --git a/ChangeLog/7.2.0-dev.txt b/ChangeLog/7.2.0-dev.txt index e69de29bb..5bb34edb0 100644 --- a/ChangeLog/7.2.0-dev.txt +++ b/ChangeLog/7.2.0-dev.txt @@ -0,0 +1 @@ +[postgresql] Server-side statement timeout handled as TimeoutException \ No newline at end of file diff --git a/Orm/Xtensive.Orm.PostgreSql/Sql.Drivers.PostgreSql/Driver.cs b/Orm/Xtensive.Orm.PostgreSql/Sql.Drivers.PostgreSql/Driver.cs index 1c132aeea..8c590379e 100644 --- a/Orm/Xtensive.Orm.PostgreSql/Sql.Drivers.PostgreSql/Driver.cs +++ b/Orm/Xtensive.Orm.PostgreSql/Sql.Drivers.PostgreSql/Driver.cs @@ -82,6 +82,12 @@ private SqlExceptionType ProcessServerSideException(PostgresException serverSide return SqlExceptionType.Deadlock; case "40001": // serialization_failure return SqlExceptionType.SerializationFailure; + case "57014": { + // operation timeout due to statement_timeout setting of postgres (global or per session) + if (serverSideException.Message.Contains("statement timeout", StringComparison.OrdinalIgnoreCase)) + return SqlExceptionType.OperationTimeout; + return SqlExceptionType.Unknown; + } } return SqlExceptionType.Unknown; diff --git a/Orm/Xtensive.Orm.Tests.Sql/ExceptionTypesTest.cs b/Orm/Xtensive.Orm.Tests.Sql/ExceptionTypesTest.cs index 37d8cef74..10899d37b 100644 --- a/Orm/Xtensive.Orm.Tests.Sql/ExceptionTypesTest.cs +++ b/Orm/Xtensive.Orm.Tests.Sql/ExceptionTypesTest.cs @@ -31,7 +31,7 @@ private class EvilThreadArgument private const string UniqueTableName = "TheUnique"; private const string CheckedTableName = "TheChecked"; - private Schema schema; + protected Schema schema; protected override void TestFixtureSetUp() { @@ -283,12 +283,12 @@ protected virtual void AssertExceptionType(SqlExceptionType expected, SqlExcepti Assert.AreEqual(expected, actual); } - private void AssertExceptionType(ISqlCompileUnit statement, SqlExceptionType expectedExceptionType) + protected void AssertExceptionType(ISqlCompileUnit statement, SqlExceptionType expectedExceptionType) { AssertExceptionType(Connection, statement, expectedExceptionType); } - private void AssertExceptionType(SqlConnection connection, ISqlCompileUnit statement, SqlExceptionType expectedExceptionType) + protected void AssertExceptionType(SqlConnection connection, ISqlCompileUnit statement, SqlExceptionType expectedExceptionType) { var commandText = Driver.Compile(statement).GetCommandText(); AssertExceptionType(connection, commandText, expectedExceptionType); @@ -306,7 +306,7 @@ private void AssertExceptionType(SqlConnection connection, string commandText, S Assert.Fail("Exception was not thrown"); } - private TableColumn CreatePrimaryKey(Table table) + protected TableColumn CreatePrimaryKey(Table table) { var column = table.CreateColumn(IdColumnName, Driver.TypeMappings[typeof (int)].MapType()); _ = table.CreatePrimaryKey("pk_" + table.Name, column); diff --git a/Orm/Xtensive.Orm.Tests.Sql/PostgreSql/ExceptionTypesTest.cs b/Orm/Xtensive.Orm.Tests.Sql/PostgreSql/ExceptionTypesTest.cs index 9af9d6623..b6b4254cb 100644 --- a/Orm/Xtensive.Orm.Tests.Sql/PostgreSql/ExceptionTypesTest.cs +++ b/Orm/Xtensive.Orm.Tests.Sql/PostgreSql/ExceptionTypesTest.cs @@ -1,19 +1,65 @@ -// Copyright (C) 2010 Xtensive LLC. -// All rights reserved. -// For conditions of distribution and use, see license. +// Copyright (C) 2010-2025 Xtensive LLC. +// This code is distributed under MIT license terms. +// See the License.txt file in the project root for more information. // Created by: Denis Krjuchkov // Created: 2010.02.08 +using System.Data; using NUnit.Framework; +using Xtensive.Sql; namespace Xtensive.Orm.Tests.Sql.PostgreSql { [TestFixture] public class ExceptionTypesTest : Sql.ExceptionTypesTest { + private const string PgTimeoutTableName = "PgTheTimeout"; + private const string IdColumnName = "id"; + protected override void CheckRequirements() { Require.ProviderIs(StorageProvider.PostgreSql); } + + protected override void TestFixtureSetUp() + { + base.TestFixtureSetUp(); + Connection.BeginTransaction(); + EnsureTableNotExists(schema, PgTimeoutTableName); + Connection.Commit(); + } + + [Test] + public void PostgreSqlServerSideTimeout() + { + Connection.BeginTransaction(); + var table = schema.CreateTable(PgTimeoutTableName); + _ = CreatePrimaryKey(table); + _ = ExecuteNonQuery(SqlDdl.Create(table)); + Connection.Commit(); + + var tableRef = SqlDml.TableRef(table); + var insert = SqlDml.Insert(tableRef); + insert.AddValueRow((tableRef[IdColumnName], 1)); + + using (var connectionOne = Driver.CreateConnection()) { + connectionOne.Open(); + connectionOne.BeginTransaction(); + using (var command = connectionOne.CreateCommand()) { + command.CommandText = "SET statement_timeout = 15"; + _ = command.ExecuteNonQuery(); + } + + using (var connectionTwo = Driver.CreateConnection()) { + connectionTwo.Open(); + connectionTwo.BeginTransaction(IsolationLevel.ReadCommitted); + + using (var command = connectionTwo.CreateCommand(insert)) { + _ = command.ExecuteNonQuery(); + } + AssertExceptionType(connectionOne, insert, SqlExceptionType.OperationTimeout); + } + } + } } } \ No newline at end of file