Hello Jeremy! Happy new year!

I have upgraded my Sequel version today but I still have my tests failing 
with the same error.
Can you please confirm that the change above was part of the Jan 1st 
release?

Thanks ahead.  
Maria.

On Thursday, December 1, 2022 at 12:54:14 AM UTC-5 Jeremy Evans wrote:

> On Thu, Dec 1, 2022 at 2:28 AM 'Maria Fradkin' via sequel-talk <
> [email protected]> wrote:
>
>> Yes, working perfectly! Thank you very much!
>>
>
> Thanks for the feedback.  This won't make the December 2022 release 
> (release testing had already finished), but I will include it in the 
> January 2023 release.
>
> Thanks,
> Jeremy
>
> On Wednesday, November 30, 2022 at 10:52:31 AM UTC-5 Jeremy Evans wrote:
>>
>>> On Wed, Nov 30, 2022 at 11:19 PM 'Maria Fradkin' via sequel-talk <
>>> [email protected]> wrote:
>>>
>>>> Hello,
>>>>
>>>> I have discovered one additional problem related to the partitioned 
>>>> tables in Postgres. We use unique index and constraint definitions to 
>>>> handle insert on conflict behaviour in our code, but for some reason we 
>>>> cannot automatically detect indexes for partitioned tables. Here is the 
>>>> example:
>>>> My table is partitioned by hash on some_id column, I have few 
>>>> partitions attached 
>>>> some_table_hash_p1  
>>>> some_table_hash_p2
>>>> ...
>>>> some_table_hash_p16
>>>> And we have indexes both unique and not unique on this table.
>>>> When I try SomeTable.db.indexes(:some_table, include_partial: true) I 
>>>> am getting {}
>>>> On the same structure on the table but without partitioning I see all 
>>>> indexes as defined in DB
>>>> {:some_table_col1_id_col3_hash_col2_id_index=>{:columns=>[:col1_id, 
>>>> :col3_hash, :col2_id], :unique=>false, :deferrable=>nil},
>>>> :some_table_col1_id_col3_id_col2_id_index=>{:columns=>[:col1_id, 
>>>> :col3_id, :col2_id], :unique=>false, :deferrable=>nil}, ... }
>>>>
>>>> Can you please advise me again how to fix this issue with an actual 
>>>> model table? 
>>>>
>>>
>>> Looks like partitioned indexes use a different reltype.  Can you try 
>>> this patch?:
>>>
>>>  diff --git a/lib/sequel/adapters/shared/postgres.rb 
>>> b/lib/sequel/adapters/shared/postgres.rb
>>> index bc9fc68a4..3ef326f4b 100644
>>> --- a/lib/sequel/adapters/shared/postgres.rb
>>> +++ b/lib/sequel/adapters/shared/postgres.rb
>>> @@ -919,7 +919,7 @@ module Sequel
>>>              join(Sequel[:pg_attribute].as(:att), 
>>> :attrelid=>Sequel[:tab][:oid], :attnum=>attnums).
>>>              left_join(Sequel[:pg_constraint].as(:con), 
>>> :conname=>Sequel[:indc][:relname]).
>>>              where{{
>>> -              indc[:relkind]=>'i',
>>> +              indc[:relkind]=>%w'i I',
>>>                ind[:indisprimary]=>false,
>>>                :indexprs=>nil,
>>>                :indisvalid=>true}}.
>>>
>>> Thanks,
>>> Jeremy
>>>
>> -- 
>> You received this message because you are subscribed to the Google Groups 
>> "sequel-talk" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to [email protected].
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/sequel-talk/363efcda-0bbf-4d03-ad02-e027e1c2e5a4n%40googlegroups.com
>>  
>> <https://groups.google.com/d/msgid/sequel-talk/363efcda-0bbf-4d03-ad02-e027e1c2e5a4n%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"sequel-talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sequel-talk/9f541b1e-f851-46de-a69a-9431bbac2023n%40googlegroups.com.

Reply via email to