idddZddlmZddlmZddlmZddlmZdZdZdZd Z d Z d Z d Z d S)zgprivate module containing functions used for copying data between instances based on join conditions. ) attributes)exc)utilc \|j}|j}|D]\} } |j| } |j| jj||t j} n0#tj $r} td|| || | Yd} ~ nd} ~ wwxYw |j| } |j| jj ||| dn0#tj $r} td|| || | Yd} ~ nd} ~ wwxYw|r0| j r)| j r"| | r d|jd|| f<dS)NFT pk_cascaded)dict_columntopropertymanagerkeyimplgetr PASSIVE_OFFrUnmappedColumnError_raise_col_to_propset primary_key references)source source_mapperdest dest_mappersynchronize_pairs uowcommitflag_cascaded_pks source_dict dest_dictlrpropvalueerrs H/opt/cloudlinux/venv/lib/python3.11/site-packages/sqlalchemy/orm/sync.pypopulater$s+K I!BB1 M 215DN48,155 Z%;EE& M M M umQ Q L L L L L L L L M L03D L " ' + +D)UD I I I I& L L L t]A{As K K K K K K K K L  B  B  B Q  B >BI -q!9 :9BBs0AAB +BB  :CC5C00C5c .|D]\}} |j|}||j}n0#tj$r}t d|||||Yd}~nd}~wwxYw |j|}|||j<j#tj$rt d||||YwxYwdS)NFT)r r rrr)rrrrrr r!r"s r#bulk_populate_inherit_keysr&>s! I I1 O 215D)EE& O O O umQ q# N N N N N N N N O I 215D$)K ! !& I I I t]A}a H H H H H I I Is&$AA  AA--"BBc `|D]\}}|jrP|||j|tjvr(t d|dtj|d |||j|d{#tj $r}tdd||||Yd}~d}~wwxYwdS)Nz7Dependency rule tried to blank-out primary key column 'z' on instance ''T) r_get_state_attr_by_columnr orm_util _none_setAssertionError state_str_set_state_attr_by_columnrrr)rrrrrr"s r#clearr/Ns!CC1 M 55dDIqII%&&!.23!!X5G5M5M5M5MO  C  1 1$ 1d K K K K& C C C tT1k1c B B B B B B B B CCCs A>>B+ B&&B+c H|D]\}} |||}|||j|tj}n0#t j$r} td||d|| Yd} ~ nd} ~ wwxYw|||j <||||j z<dSN)passiveF) _get_committed_attr_by_columnobjr)r rrrrrr ) rrr old_prefixrrroldvaluer!r"s r#updater7`s! , ,1 F$BB aH";; Q 0F<EE& F F F umQa E E E E E E E E FQU #+Z!%    , ,sAAB)BBc |D]i\}} |||j|tj}n0#tj$r}t d||d||Yd}~nd}~wwxYw|||j<jdSr1)r)r rrrrrr )rrdict_rrrr!r"s r# populate_dictr:os!1 F!;; Q 0F<EE& F F F umQa E E E E E E E E Fae s(2AAAc |D]\}} |j|}n0#tj$r}td||d||Yd}~nd}~wwxYw|||jt j}t|j rdSdS)zpreturn true if the source object has changes from an old to a new value on the given synchronize pairs FNT) r rrrget_attribute_historyr rPASSIVE_NO_INITIALIZEbooldeleted) rrrrrrr r"historys r#source_modifiedrA{s "  1 F 215DD& F F F umQa E E E E E E E E F11 DHj>     44 us A?Ac |r1tjtjd|d|d|dStjtjd|d|d|d|dS)Nz0Can't execute sync rule for destination column 'z '; mapper 'z' does not map this column. Try using an explicit `foreign_keys` collection which does not include this column (or use a viewonly=True relation).)replace_contextz+Can't execute sync rule for source column 'zx' does not map this column. Try using an explicit `foreign_keys` collection which does not include destination column 'z$' (or use a viewonly=True relation).)rraise_rr)isdestr source_columnr dest_columnr"s r#rrs   # # 1< [[[ J      # # !==--- >    N) __doc__rrrr*r$r&r/r7r:rArrHr#rLs (B(B(BV I I I CCC$ , , ,   &     rH