From: Christopher Powers Date: February 7 2011 10:17pm Subject: bzr push into mysql-trunk-wl5379 branch (chris.powers:3224 to 3225) WL#4896 List-Archive: http://lists.mysql.com/commits/130633 Message-Id: <20110207221730.BDEE81DB0333@xeno.mysql.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============5634161805429864977==" --===============5634161805429864977== MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Content-Disposition: inline 3225 Christopher Powers 2011-02-07 WL#4896 "Performance Schema Net IO" - Fixed warning in pfs.cc - Updated abi_check.out files modified: include/mysql/psi/psi_abi_v1.h.pp include/mysql/psi/psi_abi_v2.h.pp storage/perfschema/pfs.cc 3224 cpowers 2011-02-07 WL#4896 "Performance Schema Net IO" - Addd socket_summary_by_instance to mysql_system_tables.sql modified: scripts/mysql_system_tables.sql === modified file 'include/mysql/psi/psi_abi_v1.h.pp' --- a/include/mysql/psi/psi_abi_v1.h.pp 2011-02-07 19:17:08 +0000 +++ b/include/mysql/psi/psi_abi_v1.h.pp 2011-02-07 22:17:15 +0000 @@ -8,6 +8,7 @@ struct PSI_table_share; struct PSI_table; struct PSI_thread; struct PSI_file; +struct PSI_socket; struct PSI_table_locker; struct PSI_bootstrap { @@ -66,11 +67,29 @@ enum PSI_table_lock_operation PSI_TABLE_LOCK= 0, PSI_TABLE_EXTERNAL_LOCK= 1, }; +enum PSI_socket_operation +{ + PSI_SOCKET_CREATE= 0, + PSI_SOCKET_CONNECT= 1, + PSI_SOCKET_BIND= 2, + PSI_SOCKET_CLOSE= 3, + PSI_SOCKET_SEND= 4, + PSI_SOCKET_RECV= 5, + PSI_SOCKET_SENDTO= 6, + PSI_SOCKET_RECVFROM= 7, + PSI_SOCKET_SENDMSG= 8, + PSI_SOCKET_RECVMSG= 9, + PSI_SOCKET_SEEK= 10, + PSI_SOCKET_OPT= 11, + PSI_SOCKET_STAT= 12, + PSI_SOCKET_SHUTDOWN= 13 +}; typedef unsigned int PSI_mutex_key; typedef unsigned int PSI_rwlock_key; typedef unsigned int PSI_cond_key; typedef unsigned int PSI_thread_key; typedef unsigned int PSI_file_key; +typedef unsigned int PSI_socket_key; struct PSI_mutex_info_v1 { PSI_mutex_key *m_key; @@ -101,6 +120,12 @@ struct PSI_file_info_v1 const char *m_name; int m_flags; }; +struct PSI_socket_info_v1 +{ + PSI_socket_key *m_key; + const char *m_name; + int m_flags; +}; struct PSI_mutex_locker_state_v1 { uint m_flags; @@ -165,6 +190,19 @@ struct PSI_table_locker_state_v1 int m_src_line; void *m_wait; }; +struct PSI_socket_locker_state_v1 +{ + uint m_flags; + struct PSI_socket *m_socket; + struct PSI_thread *m_thread; + size_t m_number_of_bytes; + ulonglong m_timer_start; + ulonglong (*m_timer)(void); + enum PSI_socket_operation m_operation; + const char* m_src_file; + int m_src_line; + void *m_wait; +}; typedef void (*register_mutex_v1_t) (const char *category, struct PSI_mutex_info_v1 *info, int count); typedef void (*register_rwlock_v1_t) @@ -175,6 +213,8 @@ typedef void (*register_thread_v1_t) (const char *category, struct PSI_thread_info_v1 *info, int count); typedef void (*register_file_v1_t) (const char *category, struct PSI_file_info_v1 *info, int count); +typedef void (*register_socket_v1_t) + (const char *category, struct PSI_socket_info_v1 *info, int count); typedef struct PSI_mutex* (*init_mutex_v1_t) (PSI_mutex_key key, const void *identity); typedef void (*destroy_mutex_v1_t)(struct PSI_mutex *mutex); @@ -184,6 +224,9 @@ typedef void (*destroy_rwlock_v1_t)(stru typedef struct PSI_cond* (*init_cond_v1_t) (PSI_cond_key key, const void *identity); typedef void (*destroy_cond_v1_t)(struct PSI_cond *cond); +typedef struct PSI_socket* (*init_socket_v1_t) + (PSI_socket_key key, const void *identity); +typedef void (*destroy_socket_v1_t)(struct PSI_socket *socket); typedef struct PSI_table_share* (*get_table_share_v1_t) (my_bool temporary, struct TABLE_SHARE *share); typedef void (*release_table_share_v1_t)(struct PSI_table_share *share); @@ -243,6 +286,9 @@ typedef struct PSI_file_locker* (*get_th typedef struct PSI_file_locker* (*get_thread_file_descriptor_locker_v1_t) (struct PSI_file_locker_state_v1 *state, File file, enum PSI_file_operation op); +typedef struct PSI_socket_locker* (*get_thread_socket_locker_v1_t) + (struct PSI_socket_locker_state_v1 *state, + struct PSI_socket *socket, enum PSI_socket_operation op); typedef void (*unlock_mutex_v1_t) (struct PSI_mutex *mutex); typedef void (*unlock_rwlock_v1_t) @@ -283,6 +329,18 @@ typedef void (*start_file_wait_v1_t) const char *src_file, uint src_line); typedef void (*end_file_wait_v1_t) (struct PSI_file_locker *locker, size_t count); +typedef void (*start_socket_wait_v1_t) + (struct PSI_socket_locker *locker, size_t count, + const char *src_file, uint src_line); +typedef void (*end_socket_wait_v1_t) + (struct PSI_socket_locker *locker, size_t count); +typedef void (*set_socket_descriptor_v1_t)(struct PSI_socket *socket, + uint fd); +typedef void (*set_socket_address_v1_t)(struct PSI_socket *socket, + const struct sockaddr * addr); +typedef void (*set_socket_info_v1_t)(struct PSI_socket *socket, + uint fd, + const struct sockaddr * addr); struct PSI_v1 { register_mutex_v1_t register_mutex; @@ -290,12 +348,15 @@ struct PSI_v1 register_cond_v1_t register_cond; register_thread_v1_t register_thread; register_file_v1_t register_file; + register_socket_v1_t register_socket; init_mutex_v1_t init_mutex; destroy_mutex_v1_t destroy_mutex; init_rwlock_v1_t init_rwlock; destroy_rwlock_v1_t destroy_rwlock; init_cond_v1_t init_cond; destroy_cond_v1_t destroy_cond; + init_socket_v1_t init_socket; + destroy_socket_v1_t destroy_socket; get_table_share_v1_t get_table_share; release_table_share_v1_t release_table_share; drop_table_share_v1_t drop_table_share; @@ -324,6 +385,7 @@ struct PSI_v1 get_thread_file_name_locker_v1_t get_thread_file_name_locker; get_thread_file_stream_locker_v1_t get_thread_file_stream_locker; get_thread_file_descriptor_locker_v1_t get_thread_file_descriptor_locker; + get_thread_socket_locker_v1_t get_thread_socket_locker; unlock_mutex_v1_t unlock_mutex; unlock_rwlock_v1_t unlock_rwlock; signal_cond_v1_t signal_cond; @@ -346,6 +408,11 @@ struct PSI_v1 end_file_open_wait_and_bind_to_descriptor; start_file_wait_v1_t start_file_wait; end_file_wait_v1_t end_file_wait; + start_socket_wait_v1_t start_socket_wait; + end_socket_wait_v1_t end_socket_wait; + set_socket_descriptor_v1_t set_socket_descriptor; + set_socket_address_v1_t set_socket_address; + set_socket_info_v1_t set_socket_info; }; typedef struct PSI_v1 PSI; typedef struct PSI_mutex_info_v1 PSI_mutex_info; @@ -353,10 +420,12 @@ typedef struct PSI_rwlock_info_v1 PSI_rw typedef struct PSI_cond_info_v1 PSI_cond_info; typedef struct PSI_thread_info_v1 PSI_thread_info; typedef struct PSI_file_info_v1 PSI_file_info; +typedef struct PSI_socket_info_v1 PSI_socket_info; typedef struct PSI_mutex_locker_state_v1 PSI_mutex_locker_state; typedef struct PSI_rwlock_locker_state_v1 PSI_rwlock_locker_state; typedef struct PSI_cond_locker_state_v1 PSI_cond_locker_state; typedef struct PSI_file_locker_state_v1 PSI_file_locker_state; typedef struct PSI_table_locker_state_v1 PSI_table_locker_state; +typedef struct PSI_socket_locker_state_v1 PSI_socket_locker_state; extern MYSQL_PLUGIN_IMPORT PSI *PSI_server; C_MODE_END === modified file 'include/mysql/psi/psi_abi_v2.h.pp' --- a/include/mysql/psi/psi_abi_v2.h.pp 2011-01-26 22:26:41 +0000 +++ b/include/mysql/psi/psi_abi_v2.h.pp 2011-02-07 22:17:15 +0000 @@ -75,10 +75,14 @@ enum PSI_socket_operation PSI_SOCKET_CLOSE= 3, PSI_SOCKET_SEND= 4, PSI_SOCKET_RECV= 5, - PSI_SOCKET_SEEK= 6, - PSI_SOCKET_OPT= 7, - PSI_SOCKET_STAT= 8, - PSI_SOCKET_SHUTDOWN= 9 + PSI_SOCKET_SENDTO= 6, + PSI_SOCKET_RECVFROM= 7, + PSI_SOCKET_SENDMSG= 8, + PSI_SOCKET_RECVMSG= 9, + PSI_SOCKET_SEEK= 10, + PSI_SOCKET_OPT= 11, + PSI_SOCKET_STAT= 12, + PSI_SOCKET_SHUTDOWN= 13 }; typedef unsigned int PSI_mutex_key; typedef unsigned int PSI_rwlock_key; === modified file 'storage/perfschema/pfs.cc' --- a/storage/perfschema/pfs.cc 2011-02-07 21:34:45 +0000 +++ b/storage/perfschema/pfs.cc 2011-02-07 22:17:15 +0000 @@ -3630,7 +3630,7 @@ static void end_socket_wait_v1(PSI_socke } /** Aggregate the number of bytes for the operation */ - if (byte_count > -1) + if ((int)byte_count > -1) io_stat->aggregate_timed(byte_count); } --===============5634161805429864977== MIME-Version: 1.0 Content-Type: text/bzr-bundle; charset="us-ascii"; name="bzr/chris.powers@stripped" Content-Transfer-Encoding: 7bit Content-Disposition: inline # Bazaar merge directive format 2 (Bazaar 0.90) # revision_id: chris.powers@stripped # target_branch: file:///home/cpowers/work/dev/mysql-trunk-wl4896/ # testament_sha1: 8a7512b24942e5ae6c36b19a6f8983cff26aaf6a # timestamp: 2011-02-07 16:17:30 -0600 # base_revision_id: cpowers@tma-1-20110207213649-njawkiv1pzup1e78 # # Begin bundle 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 Q/5A --===============5634161805429864977==--