From: Marc Alff Date: July 21 2010 7:07pm Subject: bzr push into mysql-next-mr branch (marc.alff:3162 to 3163) List-Archive: http://lists.mysql.com/commits/114088 Message-Id: <20100721190729.8368345E80@linux-su11.site> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============5449856293222449575==" --===============5449856293222449575== MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Content-Disposition: inline 3163 Marc Alff 2010-07-21 Code cleanup. Manual merge for the missing implementation of column THREADS.PARENT_THREAD_ID from mysql-next-mr-perfschema modified: storage/perfschema/pfs.cc storage/perfschema/pfs_instr.cc storage/perfschema/pfs_instr.h storage/perfschema/table_threads.cc storage/perfschema/table_threads.h 3162 Marc Alff 2010-07-09 Added doxygen comments modified: include/mysql/psi/psi.h storage/perfschema/pfs.cc storage/perfschema/pfs_instr.cc storage/perfschema/pfs_instr.h storage/perfschema/pfs_setup_actor.h storage/perfschema/table_threads.h === modified file 'storage/perfschema/pfs.cc' --- a/storage/perfschema/pfs.cc 2010-07-10 03:31:35 +0000 +++ b/storage/perfschema/pfs.cc 2010-07-21 19:06:21 +0000 @@ -997,9 +997,25 @@ void* pfs_spawn_thread(void *arg) /* First, attach instrumentation to this newly created pthread. */ PFS_thread_class *klass= find_thread_class(typed_arg->m_child_key); if (likely(klass != NULL)) + { pfs= create_thread(klass, typed_arg->m_child_identity, 0); + if (likely(pfs != NULL)) + { + PFS_thread *parent= typed_arg->m_parent_thread; + + pfs->m_parent_thread_internal_id= parent->m_thread_internal_id; + + memcpy_fixed(pfs->m_username, parent->m_username, sizeof(pfs->m_username)); + pfs->m_username_length= parent->m_username_length; + + memcpy_fixed(pfs->m_hostname, parent->m_hostname, sizeof(pfs->m_hostname)); + pfs->m_hostname_length= parent->m_hostname_length; + } + } else + { pfs= NULL; + } my_pthread_setspecific_ptr(THR_PFS, pfs); /* === modified file 'storage/perfschema/pfs_instr.cc' --- a/storage/perfschema/pfs_instr.cc 2010-07-10 03:31:35 +0000 +++ b/storage/perfschema/pfs_instr.cc 2010-07-21 19:06:21 +0000 @@ -728,6 +728,7 @@ PFS_thread* create_thread(PFS_thread_cla { pfs->m_thread_internal_id= PFS_atomic::add_u32(&thread_internal_id_counter, 1); + pfs->m_parent_thread_internal_id= 0; pfs->m_thread_id= thread_id; pfs->m_event_id= 1; pfs->m_enabled= true; === modified file 'storage/perfschema/pfs_instr.h' --- a/storage/perfschema/pfs_instr.h 2010-07-10 03:31:35 +0000 +++ b/storage/perfschema/pfs_instr.h 2010-07-21 19:06:21 +0000 @@ -196,6 +196,8 @@ struct PFS_thread bool m_enabled; /** Internal thread identifier, unique. */ ulong m_thread_internal_id; + /** Parent internal thread identifier. */ + ulong m_parent_thread_internal_id; /** External (SHOW PROCESSLIST) thread identifier, not unique. */ ulong m_thread_id; /** Thread class. */ === modified file 'storage/perfschema/table_threads.cc' --- a/storage/perfschema/table_threads.cc 2010-07-02 16:15:37 +0000 +++ b/storage/perfschema/table_threads.cc 2010-07-21 19:06:21 +0000 @@ -183,6 +183,7 @@ void table_threads::make_row(PFS_thread return; m_row.m_thread_internal_id= pfs->m_thread_internal_id; + m_row.m_parent_thread_internal_id= pfs->m_parent_thread_internal_id; m_row.m_thread_id= pfs->m_thread_id; m_row.m_name= safe_class->m_name; m_row.m_name_length= safe_class->m_name_length; @@ -294,7 +295,10 @@ int table_threads::read_row_values(TABLE f->set_null(); break; case 11: /* PARENT_THREAD_ID */ - f->set_null(); + if (m_row.m_parent_thread_internal_id != 0) + set_field_ulong(f, m_row.m_parent_thread_internal_id); + else + f->set_null(); break; case 12: /* ROLE */ f->set_null(); === modified file 'storage/perfschema/table_threads.h' --- a/storage/perfschema/table_threads.h 2010-07-10 03:31:35 +0000 +++ b/storage/perfschema/table_threads.h 2010-07-21 19:06:21 +0000 @@ -65,6 +65,8 @@ struct row_threads uint m_processlist_info_length; /** Column INSTRUMENTED. */ bool *m_enabled_ptr; + /** Column PARENT_THREAD_ID. */ + ulong m_parent_thread_internal_id; }; /** Table PERFORMANCE_SCHEMA.THREADS. */ --===============5449856293222449575== MIME-Version: 1.0 Content-Type: text/bzr-bundle; charset="us-ascii"; name="bzr/marc.alff@stripped" Content-Transfer-Encoding: 7bit Content-Disposition: inline # Bazaar merge directive format 2 (Bazaar 0.90) # revision_id: marc.alff@stripped # target_branch: file:///home/malff/BZR_TREE/mysql-next-mr-wl4674/ # testament_sha1: 80751c09f40dab17ea369053a8279da8695139f1 # timestamp: 2010-07-21 13:07:29 -0600 # source_branch: file:///home/malff/BZR_TREE/mysql-next-mr/ # base_revision_id: marc.alff@stripped\ # lit77jt01j651qxm # # Begin bundle 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 --===============5449856293222449575==--