Uname: Linux web3.us.cloudlogin.co 5.10.226-xeon-hst #2 SMP Fri Sep 13 12:28:44 UTC 2024 x86_64
Software: Apache
PHP version: 8.1.31 [ PHP INFO ] PHP os: Linux
Server Ip: 162.210.96.117
Your Ip: 18.116.90.183
User: edustar (269686) | Group: tty (888)
Safe Mode: OFF
Disable Function:
NONE

name : connection.cpython-312.pyc
�

%f�@��L�dZ	ddlZdZddlZddlZddlmZddlmZddl	m
Z
mZmZdd	l
mZdd
lmZmZddlmZmZmZddlmZmZd
ZdZGd�de�Zd�ZGd�de�ZGd�de�ZGd�de�Z Gd�de�Z!Gd�de!�Z"Gd�de!�Z#y#dZY��xYw)z4Implementation of communication for MySQL X servers.�NTF��wraps�)�MySQL41AuthPlugin)�InterfaceError�OperationalError�ProgrammingError��Schema)�Protocol�MessageReaderWriter)�Result�	RowResult�	DocResult)�SqlStatement�AddStatementzDROP DATABASE IF EXISTS `{0}`z#CREATE DATABASE IF NOT EXISTS `{0}`c�4�eZdZd�Zd�Zd�Zd�Zd�Zifd�Zy)�SocketStreamc� �d|_d|_y)NF)�_socket�_is_ssl��selfs �H/usr/local/python-3.12/lib/python3.12/site-packages/mysqlx/connection.py�__init__zSocketStream.__init__2s��������c���t|t�rtjntj}tj|tj
�|_|jj|�y�N)�
isinstance�tuple�socket�AF_INET�AF_UNIX�SOCK_STREAMr�connect)r�params�s_types   rr%zSocketStream.connect6sD��#-�f�e�#<����&�.�.���}�}�V�V�-?�-?�@��������V�$rc��|j�td��g}|dkDrP|jj|�}|dk(rtd��|j	|�|t|�z}|dkDr�Pdj
|�S)N�MySQLx Connection not availablerrzUnexpected connection close)rr�recv�RuntimeError�append�len�join)r�count�buf�datas    r�readzSocketStream.read;s~���<�<��"�#D�E�E����a�i��<�<�$�$�U�+�D��s�{�"�#@�A�A��J�J�t���S��Y��E��a�i��x�x��}�rc�h�|j�td��|jj|�y)Nr))rr�sendall�rr1s  rr4zSocketStream.sendallGs*���<�<��"�#D�E�E������T�"rc�`�|jsy|jj�d|_yr)r�closers rr7zSocketStream.closeLs#���|�|����������rc��ts|j�td��tjtj
�}|j
�d|vr*	|j|d�tj|_	d|vr*	|j|d�tj|_d|vr'	|j|d|j!dd��nd|vr|j�td	��|j#|j$�|_d
|_y#ttjf$r|j�td��wxYw#ttjf$r|j�td��wxYw#ttjf$r|j�td��wxYw)Nz'Python installation has no SSL support.zssl-cazInvalid CA certificate.zssl-crlzInvalid CRL.zssl-certzssl-keyzInvalid Client Certificate/Key.z Client Certificate not provided.T)�
SSL_AVAILABLEr7r+�ssl�
SSLContext�PROTOCOL_SSLv23�load_default_certs�load_verify_locations�
CERT_REQUIRED�verify_mode�IOError�SSLErrorr�VERIFY_CRL_CHECK_CHAIN�verify_flags�load_cert_chain�get�wrap_socketrr)r�ssl_opts�contexts   r�set_sslzSocketStream.set_sslSs�����J�J�L��H�I�I��.�.��!4�!4�5���"�"�$��x��
@��-�-�h�x�.@�A�&)�&7�&7��#��� �
5��-�-�h�y�.A�B�'*�'A�'A��$���!�
H��'�'���(<��L�L��D�1�3�
�(�
"��J�J�L� �!C�D�D��*�*�4�<�<�8�������-�S�\�\�*�
@��
�
��$�%>�?�?�
@���S�\�\�*�
5��
�
��$�^�4�4�
5���S�\�\�*�
H��
�
��$�%F�G�G�
H�s$�)D#�)E�6%F�#5E�5F�5GN)	�__name__�
__module__�__qualname__rr%r2r4r7rJ�rrrr1s%���%�

�#�
� "�!rrc�.��t���fd��}|S)Nc���	�|g|��i|��S#tjtf$r|j�t	d��wxYw)NzCannot connect to host.)r!�errorr+�
disconnectr)r�args�kwargs�funcs   �r�wrapperz(catch_network_exception.<locals>.wrapperxsK���	<���.�t�.�v�.�.�����l�+�	<��O�O�� �!:�;�;�	<�s	��5Ar)rUrVs` r�catch_network_exceptionrWws ���
�4�[�<��<��Nrc���eZdZd�Zd�Zd�Zd�Zd�Zd�Ze	d��Z
e	d��Ze	d	��Ze	d
��Z
e	d��Ze	dd��Ze	d
��Ze	d��Ze	d��Ze	d��Ze	d��Zd�Zd�Zd�Zy)�
Connectionc���|jd�|_|jd�|_|jd�|_d|_||_t
�|_d|_d|_	y)N�user�password�schema)
rF�_user�	_password�_schema�_active_result�settingsr�stream�
reader_writer�protocol�rrbs  rrzConnection.__init__�sY���\�\�&�)��
�!���j�1����|�|�H�-���"��� ��
�"�n���!�����
rc�`�|j�"|jj�d|_yyr)ra�	fetch_allrs r�fetch_active_resultzConnection.fetch_active_result�s-�����*����)�)�+�"&�D��+rc��d|jvr+|jd|jjdd�fSd|jvr|jdSy)N�host�port�$�r!)�	localhostrm)rbrFrs r�_connection_paramszConnection._connection_params�sQ���T�]�]�"��=�=��(�$�-�-�*;�*;�F�E�*J�J�J��t�}�}�$��=�=��*�*�$rc��|jj|j��t|j�|_t|j�|_|j�|j�yr)	rcr%ror
rdrre�_handle_capabilities�
_authenticaters rr%zConnection.connect�sX�������D�3�3�5�6�0����=��� ��!3�!3�4��
��!�!�#����rc��|jj�j}|r!|djj	�dk(s:n	|j
j
dd�r|j�td��ytjdkr8|j
j
dd�r|j�td��y|jjd�	�|jj|j
�y)
Nr�tlsFz
ssl-enablezSSL not enabled at server.)���	z=The support for SSL is not available for this Python version.T)rt)re�get_capabilites�capabilities�name�lowerrbrFr7r�sys�version_infor+�set_capabilitiesrcrJr5s  rrqzConnection._handle_capabilities�s����}�}�,�,�.�;�;��15��Q����"�"�$��-�5��}�}� � ��u�5��
�
��&�'C�D�D�����i�'��}�}� � ��u�5��
�
��"�$+�,�,���
�
�&�&�4�&�0������D�M�M�*rc�R�t|j|j�}|jj	|j��|jj
�}|jj|j|��|jj�yr)
rr^r_re�send_auth_start�	auth_name�read_auth_continue�send_auth_continue�build_authentication_response�read_auth_ok)r�plugin�
extra_datas   rrrzConnection._authenticate�ss��"�4�:�:�t�~�~�>���
�
�%�%�f�&6�&6�&8�9��]�]�5�5�7�
��
�
�(�(��0�0��<�	>��
�
�"�"�$rc�>�|jjd||�y)N�sql)re�send_execute_statement)rr�rSs   r�send_sqlzConnection.send_sql�s���
�
�,�,�U�C��>rc��|jj|�d}t|t�r|j}t||�Sr)re�send_insertrr�_idsr)r�	statement�idss   rr�zConnection.send_insert�s9���
�
�!�!�)�,����i��.��.�.�C��d�C� � rc�|�|jj|�|jrt|�St	|�Sr)re�	send_find�
_doc_basedrr�rr�s  r�findzConnection.find�s/���
�
���	�*�"+�"6�"6�y���K�I�d�O�Krc�N�|jj|�t|�Sr)re�send_deleterr�s  r�deletezConnection.delete�����
�
�!�!�)�,��d�|�rc�N�|jj|�t|�Sr)re�send_updaterr�s  r�updatezConnection.update�r�rc�R�|jj|||�t|�Sr)rer�r)r�	namespace�cmd�
raise_on_failrSs     r�execute_nonqueryzConnection.execute_nonquery�s"���
�
�,�,�Y��T�B��d�|�rc��|jjd||�t|�}|j�|jdk(rtd��|ddS)Nr�rz
No data found)rer�rrhr/r)rr�rS�results    r�execute_sql_scalarzConnection.execute_sql_scalar�sR���
�
�,�,�U�C��>��4��������<�<�1�� ��1�1��a�y��|�rc�R�|jjd||�t|�S)N�xplugin)rer�r)rr�rSs   r�get_row_resultzConnection.get_row_result�s"���
�
�,�,�Y��T�B����rc�8�|jj|�Sr)re�read_row�rr�s  rr�zConnection.read_row�s���}�}�%�%�f�-�-rc�:�|jj|�yr)re�close_resultr�s  rr�zConnection.close_result�s���
�
�"�"�6�*rc�8�|jj|�Sr)re�get_column_metadatar�s  rr�zConnection.get_column_metadata�s���}�}�0�0��8�8rc�2�|jjduSr)rcrrs r�is_openzConnection.is_open�s���{�{�"�"�$�.�.rc�Z�|j�sy|jj�yr)r�rcr7rs rrRzConnection.disconnect�s���|�|�~�������rc��|j�sy|j�|jj�|jj	�|jj�|jj�yr)r�rarhre�
send_close�read_okrcr7rs rr7zConnection.close�s\���|�|�~�����*����)�)�+��
�
� � �"��
�
���������rN)T)rKrLrMrriror%rqrrrWr�r�r�r�r�r�r�r�r�r�r�r�rRr7rNrrrYrY�s
���'�
%��+�$%��?��?��!��!��L��L����������������������.��.��+��+��9��9�/��
rrYc�R��eZdZ�fd�Zd�Z�fd�Z�fd�Zd�Z�fd�Z�fd�Z	�xZ
S)�XConnectionc�l��tt|�|�g|_|j	dg�|_d|vrB|dr=|j
j
|j	d�|j	dd�d��d|_d|_|j�|j
jd�d��y)	N�routersrkrl)rkrl���Tc��|dS)N�priorityrN)�xs r�<lambda>z&XConnection.__init__.<locals>.<lambda>s
���:��r)�key�reverse)�superr�r�dependent_connections�pop�_routersr,�_cur_router�
_can_failover�_ensure_priorities�sort�rrb�	__class__s  �rrzXConnection.__init__s����
�k�4�)�(�3�%'��"� ���Y��3��
��X��(�6�"2��M�M� � � ���V�,� ���V�T�2�"�
�
���!������!��
�
���6���Erc���d}d}|jD]7}|jdd�}|�|dz
}||d<n|dkDrtdd��|dz}�9d|cxkrt|j�krnytdd��y)	Nr�dr�rz(The priorities must be between 0 and 100i�z\You must either assign no priority to any of the routers or give a priority for every routeri�)r�rFr	r-)r�priority_countr��router�pris     rr�zXConnection._ensure_prioritiess��������m�m�	�F��*�*�Z��.�C��{��!�#��%-��z�"��s��&�(��!�!���M�H�	�
�~�2��D�M�M� 2�2�"�$E�FJ�L�
L�3rc� ��|jsd|_tt|��S|jr|j
dur$d|_d|_|jD]}d|d<�	|xj
dz
c_|j|j
d}|j|j
d}|j
dkDrd|j|j
dz
d<|j
t
|j�dz
k\rd|_||fS)	NFr�T�	availablerrkrlr)r�r�r�r�ror�r-)rr�rkrlr�s    �rrozXConnection._connection_params)s����}�}�!&�D����d�>�@�@��!�!�T�%5�%5��%;�!�D��!%�D���-�-�
+��&*��{�#�
+�	
���A����}�}�T�-�-�.�v�6���}�}�T�-�-�.�v�6�����a��=B�D�M�M�$�*�*�1�,�-�k�:����s�4�=�=�1�A�5�5�!&�D���d�}�rc�"��d}|jr	tt|��St
|j�dkrtdj|���tdd��#tj
$r}|}Yd}~nd}~wwxYw|jr���n)Nr�Cannot connect to host: {0}z(Failed to connect to any of the routers.i�)
r�r�r�r%r!rQr-r�r�format)rrQ�errr�s   �rr%zXConnection.connect@s������� � �
��[�$�7�9�9��t�}�}���"� �!>�!E�!E�e�!L�M�M��G��N�N���<�<�
����
��� � �s�A!�!B�4A;�;Bc�:�|jj|�yr)r�r,)r�
connections  r�bind_connectionzXConnection.bind_connectionMs���"�"�)�)�*�5rc���|jr5|jj�j�|jr�5tt|��yr)r�r�r7r�r��rr�s �rr7zXConnection.closePs?����(�(��&�&�*�*�,�2�2�4��(�(�
�k�4�&�(rc���|jr5|jj�j�|jr�5tt|��yr)r�r�rRr�r�r�s �rrRzXConnection.disconnectUs?����(�(��&�&�*�*�,�7�7�9��(�(�
�k�4�+�-r)rKrLrMrr�ror%r�r7rR�
__classcell__�r�s@rr�r�s.���F� L�$�.O�6�)�
.�.rr�c�(��eZdZ�fd�Z�fd�Z�xZS)�NodeConnectionc�,��tt|�|�yr)r�r�rr�s  �rrzNodeConnection.__init__\s���
�n�d�,�X�6rc���	tt|��y#tj$r}tdj
|���d}~wwxYw)Nr�)r�r�r%r!rQrr�)rr�r�s  �rr%zNodeConnection.connect_sC���	L��.�$�/�1���|�|�	L� �!>�!E�!E�c�!J�K�K��	L�s��A�A�A)rKrLrMrr%r�r�s@rr�r�[s���7�L�Lrr�c�L�eZdZdZd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
y)
�BaseSessiona�Base functionality for Session classes through the X Protocol.

    This class encloses the core functionality to be made available on both
    the XSession and NodeSession classes, such functionality includes:

        - Accessing available schemas.
        - Schema management operations.
        - Enabling/disabling warning generation.
        - Retrieval of connection information.

    Args:
        settings (dict): Connection data used to connect to the database.
    c��||_yr)�	_settingsrfs  rrzBaseSession.__init__ts	��!��rc�F�|jjjduSr)�_connectionrcrrs rr�zBaseSession.is_openws�����&�&�.�.�d�:�:rc��t||�S)z�Retrieves a Schema object from the current session by it's name.

        Args:
            name (string): The name of the Schema object to be retrieved.

        Returns:
            mysqlx.Schema: The Schema object with the given name.
        r
�rrzs  r�
get_schemazBaseSession.get_schemazs���d�D�!�!rc��|jjjd�r#t||jjd�St	d��)aKRetrieves a Schema object from the current session by the schema
        name configured in the connection settings.

        Returns:
            mysqlx.Schema: The Schema object with the given name at connect
                           time.

        Raises:
            ProgrammingError: If default schema not provided.
        r]zDefault schema not provided)r�rbrFrr	rs r�get_default_schemazBaseSession.get_default_schema�sH�����$�$�(�(��2��$�� 0� 0� 9� 9�(� C�D�D��<�=�=rc�d�|jjdtj|�d�y)z�Drops the schema with the specified name.

        Args:
            name (string): The name of the Schema object to be retrieved.
        r�TN)r�r��_DROP_DATABASE_QUERYr�r�s  r�drop_schemazBaseSession.drop_schema�s+��	
���)�)��'�.�.�t�4�d�	<rc�z�|jjdtj|�d�t	||�S)z�Creates a schema on the database and returns the corresponding
        object.

        Args:
            name (string): A string value indicating the schema name.
        r�T)r�r��_CREATE_DATABASE_QUERYr�rr�s  r�
create_schemazBaseSession.create_schema�s8��	
���)�)��)�0�0��6��	>��d�D�!�!rc�>�|jjddd�y)z4Starts a transaction context on the server.
        r�zSTART TRANSACTIONTN�r�r�rs r�start_transactionzBaseSession.start_transaction�s��	
���)�)�%�1D�d�Krc�>�|jjddd�y)zXCommits all the operations executed after a call to
        startTransaction().
        r��COMMITTNr�rs r�commitzBaseSession.commit�s��	
���)�)�%��4�@rc�>�|jjddd�y)zYDiscards all the operations executed after a call to
        startTransaction().
        r��ROLLBACKTNr�rs r�rollbackzBaseSession.rollback�s��	
���)�)�%��T�Brc�8�|jj�yr)r�r7rs rr7zBaseSession.close�s������� rN)rKrLrM�__doc__rr�r�r�r�r�r�r�r�r7rNrrr�r�fs<���"�;�	"�
>�<�	"�L�
A�C�!rr�c�(��eZdZdZ�fd�Zd�Z�xZS)�XSessionaWEnables interaction with a X Protocol enabled MySQL Product.

    The functionality includes:

    - Accessing available schemas.
    - Schema management operations.
    - Enabling/disabling warning generation.
    - Retrieval of connection information.

    Args:
        settings (dict): Connection data used to connect to the database.
    c���tt|�|�t|j�|_|j
j
�yr)r�r�rr�r�r�r%r�s  �rrzXSession.__init__�s5���
�h��&�x�0�&�t�~�~�6������ � �"rc��|j�std��t|j�}|jj|j�|S)Nz$XSession is not connected to a farm.)r�r�NodeSessionr�r�r�)r�nsesss  r�bind_to_default_shardzXSession.bind_to_default_shard�sD���|�|�~�"�#I�J�J��D�N�N�+�����(�(��):�):�;��r)rKrLrMr�rrr�r�s@rr�r��s����#�
rr�c�(��eZdZdZ�fd�Zd�Z�xZS)ratEnables interaction with a X Protocol enabled MySQL Server.

    The functionality includes:

    - Accessing available schemas.
    - Schema management operations.
    - Enabling/disabling warning generation.
    - Retrieval of connection information.
    - Includes SQL Execution.

    Args:
        settings (dict): Connection data used to connect to the database.
    c���tt|�|�t|j�|_|j
j
�yr)r�rrr�r�r�r%r�s  �rrzNodeSession.__init__�s5���
�k�4�)�(�3�)�$�.�.�9������ � �"rc�.�t|j|�S)z}Creates a :class:`mysqlx.SqlStatement` object to allow running the
        SQL statement on the target MySQL Server.
        )rr�)rr�s  rr�zNodeSession.sql�s���D�,�,�c�2�2r)rKrLrMr�rr�r�r�s@rrr�s����#�
3rr)$r�r:r9r|r!�	functoolsr�authenticationr�errorsrrr	�crudrrerr
r�rrrr�rrr�r��objectrrWrYr�r�r�r�rrNrr�<module>rs���0;����M��
��-�F�F��3�0�0�1�7��>��C�6�C�L�A��A�HR.�*�R.�jL�Z�L�T!�&�T!�n�{��63�+�3��w
��M�s�B�B#
© 2025 GrazzMean