Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
M
MariaDB
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
nexedi
MariaDB
Commits
24ff1793
Commit
24ff1793
authored
May 16, 2017
by
Vicențiu Ciorbaru
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
5.6.36
parent
c33db2cd
Changes
16
Show whitespace changes
Inline
Side-by-side
Showing
16 changed files
with
108 additions
and
39 deletions
+108
-39
mysql-test/suite/perfschema/r/start_server_1_digest.result
mysql-test/suite/perfschema/r/start_server_1_digest.result
+7
-0
mysql-test/suite/perfschema/t/start_server_1_digest-master.opt
...-test/suite/perfschema/t/start_server_1_digest-master.opt
+1
-0
mysql-test/suite/perfschema/t/start_server_1_digest.test
mysql-test/suite/perfschema/t/start_server_1_digest.test
+15
-0
storage/perfschema/pfs.cc
storage/perfschema/pfs.cc
+2
-1
storage/perfschema/pfs_digest.cc
storage/perfschema/pfs_digest.cc
+3
-2
storage/perfschema/unittest/pfs-t.cc
storage/perfschema/unittest/pfs-t.cc
+35
-11
storage/perfschema/unittest/pfs_account-oom-t.cc
storage/perfschema/unittest/pfs_account-oom-t.cc
+2
-2
storage/perfschema/unittest/pfs_connect_attr-t.cc
storage/perfschema/unittest/pfs_connect_attr-t.cc
+2
-2
storage/perfschema/unittest/pfs_host-oom-t.cc
storage/perfschema/unittest/pfs_host-oom-t.cc
+2
-2
storage/perfschema/unittest/pfs_instr-oom-t.cc
storage/perfschema/unittest/pfs_instr-oom-t.cc
+25
-4
storage/perfschema/unittest/pfs_instr-t.cc
storage/perfschema/unittest/pfs_instr-t.cc
+4
-5
storage/perfschema/unittest/pfs_instr_class-oom-t.cc
storage/perfschema/unittest/pfs_instr_class-oom-t.cc
+2
-2
storage/perfschema/unittest/pfs_instr_class-t.cc
storage/perfschema/unittest/pfs_instr_class-t.cc
+2
-2
storage/perfschema/unittest/pfs_misc-t.cc
storage/perfschema/unittest/pfs_misc-t.cc
+2
-2
storage/perfschema/unittest/pfs_timer-t.cc
storage/perfschema/unittest/pfs_timer-t.cc
+2
-2
storage/perfschema/unittest/pfs_user-oom-t.cc
storage/perfschema/unittest/pfs_user-oom-t.cc
+2
-2
No files found.
mysql-test/suite/perfschema/r/start_server_1_digest.result
0 → 100644
View file @
24ff1793
SELECT "Digest table has a size 1 and is full already." as use_case;
use_case
Digest table has a size 1 and is full already.
select SCHEMA_NAME, DIGEST, DIGEST_TEXT
from performance_schema.events_statements_summary_by_digest;
SCHEMA_NAME DIGEST DIGEST_TEXT
NULL NULL NULL
mysql-test/suite/perfschema/t/start_server_1_digest-master.opt
0 → 100644
View file @
24ff1793
--performance-schema-digests-size=1
mysql-test/suite/perfschema/t/start_server_1_digest.test
0 → 100644
View file @
24ff1793
# -----------------------------------------------------------------------
# Tests for the performance schema statement Digests.
# -----------------------------------------------------------------------
--
source
include
/
not_embedded
.
inc
--
source
include
/
have_perfschema
.
inc
--
source
include
/
no_protocol
.
inc
SELECT
"Digest table has a size 1 and is full already."
as
use_case
;
select
SCHEMA_NAME
,
DIGEST
,
DIGEST_TEXT
from
performance_schema
.
events_statements_summary_by_digest
;
storage/perfschema/pfs.cc
View file @
24ff1793
...
...
@@ -3951,9 +3951,11 @@ static PSI_file* end_file_open_wait_v1(PSI_file_locker *locker,
switch
(
state
->
m_operation
)
{
case
PSI_FILE_STAT
:
case
PSI_FILE_RENAME
:
break
;
case
PSI_FILE_STREAM_OPEN
:
case
PSI_FILE_CREATE
:
case
PSI_FILE_OPEN
:
if
(
result
!=
NULL
)
{
PFS_file_class
*
klass
=
reinterpret_cast
<
PFS_file_class
*>
(
state
->
m_class
);
...
...
@@ -3964,7 +3966,6 @@ static PSI_file* end_file_open_wait_v1(PSI_file_locker *locker,
state
->
m_file
=
reinterpret_cast
<
PSI_file
*>
(
pfs_file
);
}
break
;
case
PSI_FILE_OPEN
:
default:
DBUG_ASSERT
(
false
);
break
;
...
...
storage/perfschema/pfs_digest.cc
View file @
24ff1793
/* Copyright (c) 2008, 201
6
, Oracle and/or its affiliates. All rights reserved.
/* Copyright (c) 2008, 201
7
, Oracle and/or its affiliates. All rights reserved.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
...
...
@@ -255,10 +255,11 @@ find_or_create_digest(PFS_thread *thread,
if
(
safe_index
==
0
)
{
/* Record [0] is reserved. */
safe_index
=
1
;
continue
;
}
/* Add a new record in digest stat array. */
DBUG_ASSERT
(
safe_index
<
digest_max
);
pfs
=
&
statements_digest_stat_array
[
safe_index
];
if
(
pfs
->
m_lock
.
is_free
())
...
...
storage/perfschema/unittest/pfs-t.cc
View file @
24ff1793
/* Copyright (c) 2008, 201
5
, Oracle and/or its affiliates. All rights reserved.
/* Copyright (c) 2008, 201
7
, Oracle and/or its affiliates. All rights reserved.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
...
...
@@ -27,6 +27,8 @@
#include "stub_print_error.h"
#include "stub_pfs_defaults.h"
void
unload_performance_schema
();
/* test helpers, to simulate the setup */
void
setup_thread
(
PSI_thread
*
t
,
bool
enabled
)
...
...
@@ -126,7 +128,7 @@ void test_bootstrap()
psi_2
=
boot
->
get_interface
(
PSI_VERSION_2
);
ok
(
psi_2
==
NULL
,
"version 2"
);
shutdown
_performance_schema
();
unload
_performance_schema
();
}
/*
...
...
@@ -183,6 +185,28 @@ PSI * load_perfschema()
return
(
PSI
*
)
psi
;
}
void
unload_performance_schema
()
{
cleanup_table_share
();
cleanup_instruments
();
cleanup_sync_class
();
cleanup_thread_class
();
cleanup_table_share
();
cleanup_file_class
();
cleanup_stage_class
();
cleanup_statement_class
();
cleanup_socket_class
();
cleanup_events_waits_history_long
();
cleanup_events_stages_history_long
();
cleanup_events_statements_history_long
();
cleanup_table_share_hash
();
cleanup_file_hash
();
cleanup_digest
();
PFS_atomic
::
cleanup
();
shutdown_performance_schema
();
}
void
test_bad_registration
()
{
PSI
*
psi
;
...
...
@@ -581,8 +605,7 @@ void test_bad_registration()
psi
->
register_socket
(
"X"
,
bad_socket_3
,
1
);
ok
(
dummy_socket_key
==
2
,
"assigned key"
);
shutdown_performance_schema
();
unload_performance_schema
();
}
void
test_init_disabled
()
...
...
@@ -1016,7 +1039,7 @@ void test_init_disabled()
socket_A1
=
psi
->
init_socket
(
99
,
NULL
,
NULL
,
0
);
ok
(
socket_A1
==
NULL
,
"broken socket key not instrumented"
);
shutdown
_performance_schema
();
unload
_performance_schema
();
}
void
test_locker_disabled
()
...
...
@@ -1321,7 +1344,8 @@ void test_locker_disabled()
ok
(
socket_A1
!=
NULL
,
"instrumented"
);
/* Socket thread owner has not been set */
socket_locker
=
psi
->
start_socket_wait
(
&
socket_state
,
socket_A1
,
PSI_SOCKET_SEND
,
12
,
"foo.cc"
,
12
);
ok
(
socket_locker
==
NULL
,
"no locker (no thread owner)"
);
ok
(
socket_locker
!=
NULL
,
"locker (owner not used)"
);
psi
->
end_socket_wait
(
socket_locker
,
10
);
/* Pretend the running thread is not instrumented */
/* ---------------------------------------------- */
...
...
@@ -1350,7 +1374,7 @@ void test_locker_disabled()
socket_locker
=
psi
->
start_socket_wait
(
&
socket_state
,
socket_A1
,
PSI_SOCKET_SEND
,
12
,
"foo.cc"
,
12
);
ok
(
socket_locker
==
NULL
,
"no locker"
);
shutdown
_performance_schema
();
unload
_performance_schema
();
}
void
test_file_instrumentation_leak
()
...
...
@@ -1437,7 +1461,7 @@ void test_file_instrumentation_leak()
file_locker
=
psi
->
get_thread_file_descriptor_locker
(
&
file_state
,
(
File
)
12
,
PSI_FILE_WRITE
);
ok
(
file_locker
==
NULL
,
"no locker, no leak"
);
shutdown
_performance_schema
();
unload
_performance_schema
();
}
void
test_enabled
()
...
...
@@ -1473,7 +1497,7 @@ void test_enabled()
{
&
cond_key_B
,
"C-B"
,
0
}
};
shutdown
_performance_schema
();
unload
_performance_schema
();
#endif
}
...
...
@@ -1642,6 +1666,6 @@ int main(int, char **)
plan
(
216
);
MY_INIT
(
"pfs-t"
);
do_all_tests
();
return
0
;
return
(
exit_status
())
;
}
storage/perfschema/unittest/pfs_account-oom-t.cc
View file @
24ff1793
/* Copyright (c) 2011, 201
5
, Oracle and/or its affiliates. All rights reserved.
/* Copyright (c) 2011, 201
7
, Oracle and/or its affiliates. All rights reserved.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
...
...
@@ -111,6 +111,6 @@ int main(int, char **)
plan
(
6
);
MY_INIT
(
"pfs_account-oom-t"
);
do_all_tests
();
return
0
;
return
(
exit_status
())
;
}
storage/perfschema/unittest/pfs_connect_attr-t.cc
View file @
24ff1793
/* Copyright (c) 2008, 201
1
, Oracle and/or its affiliates. All rights reserved.
/* Copyright (c) 2008, 201
7
, Oracle and/or its affiliates. All rights reserved.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
...
...
@@ -341,5 +341,5 @@ int main(int, char **)
diag
(
"skipping the cp1251 tests : missing character set"
);
plan
(
59
+
(
cs_cp1251
?
10
:
0
));
do_all_tests
();
return
0
;
return
(
exit_status
())
;
}
storage/perfschema/unittest/pfs_host-oom-t.cc
View file @
24ff1793
/* Copyright (c) 2011, 201
5
, Oracle and/or its affiliates. All rights reserved.
/* Copyright (c) 2011, 201
7
, Oracle and/or its affiliates. All rights reserved.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
...
...
@@ -111,6 +111,6 @@ int main(int, char **)
plan
(
6
);
MY_INIT
(
"pfs_host-oom-t"
);
do_all_tests
();
return
0
;
return
(
exit_status
())
;
}
storage/perfschema/unittest/pfs_instr-oom-t.cc
View file @
24ff1793
/* Copyright (c) 2008, 201
5
, Oracle and/or its affiliates. All rights reserved.
/* Copyright (c) 2008, 201
7
, Oracle and/or its affiliates. All rights reserved.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
...
...
@@ -355,6 +355,11 @@ void test_oom()
rc
=
init_instruments
(
&
param
);
ok
(
rc
==
1
,
"oom (per thread wait)"
);
cleanup_sync_class
();
cleanup_thread_class
();
cleanup_file_class
();
cleanup_instruments
();
param
.
m_enabled
=
true
;
param
.
m_mutex_class_sizing
=
0
;
param
.
m_rwlock_class_sizing
=
0
;
...
...
@@ -432,6 +437,8 @@ void test_oom()
init_event_name_sizing
(
&
param
);
rc
=
init_instruments
(
&
param
);
ok
(
rc
==
1
,
"oom (thread stages history sizing)"
);
cleanup_thread_class
();
cleanup_instruments
();
param
.
m_enabled
=
true
;
...
...
@@ -467,6 +474,9 @@ void test_oom()
init_event_name_sizing
(
&
param
);
rc
=
init_instruments
(
&
param
);
ok
(
rc
==
1
,
"oom (per thread stages)"
);
cleanup_stage_class
();
cleanup_thread_class
();
cleanup_instruments
();
param
.
m_enabled
=
true
;
...
...
@@ -502,6 +512,8 @@ void test_oom()
init_event_name_sizing
(
&
param
);
rc
=
init_instruments
(
&
param
);
ok
(
rc
==
1
,
"oom (thread statements history sizing)"
);
cleanup_thread_class
();
cleanup_instruments
();
param
.
m_enabled
=
true
;
...
...
@@ -537,6 +549,9 @@ void test_oom()
init_event_name_sizing
(
&
param
);
rc
=
init_instruments
(
&
param
);
ok
(
rc
==
1
,
"oom (per thread statements)"
);
cleanup_statement_class
();
cleanup_thread_class
();
cleanup_instruments
();
param
.
m_enabled
=
true
;
...
...
@@ -572,6 +587,8 @@ void test_oom()
init_event_name_sizing
(
&
param
);
rc
=
init_instruments
(
&
param
);
ok
(
rc
==
1
,
"oom (global waits)"
);
cleanup_sync_class
();
cleanup_instruments
();
param
.
m_enabled
=
true
;
...
...
@@ -609,8 +626,10 @@ void test_oom()
ok
(
rc
==
0
,
"init stage class"
);
rc
=
init_instruments
(
&
param
);
ok
(
rc
==
1
,
"oom (global stages)"
);
cleanup_instruments
();
cleanup_sync_class
();
cleanup_stage_class
();
cleanup_instruments
();
param
.
m_enabled
=
true
;
param
.
m_mutex_class_sizing
=
10
;
...
...
@@ -647,8 +666,10 @@ void test_oom()
ok
(
rc
==
0
,
"init statement class"
);
rc
=
init_instruments
(
&
param
);
ok
(
rc
==
1
,
"oom (global statements)"
);
cleanup_instruments
();
cleanup_sync_class
();
cleanup_statement_class
();
cleanup_instruments
();
}
void
do_all_tests
()
...
...
@@ -665,6 +686,6 @@ int main(int, char **)
plan
(
20
);
MY_INIT
(
"pfs_instr-oom-t"
);
do_all_tests
();
return
0
;
return
(
exit_status
())
;
}
storage/perfschema/unittest/pfs_instr-t.cc
View file @
24ff1793
/* Copyright (c) 2008, 201
5
, Oracle and/or its affiliates. All rights reserved.
/* Copyright (c) 2008, 201
7
, Oracle and/or its affiliates. All rights reserved.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
...
...
@@ -23,10 +23,11 @@
#include <memory.h>
PFS_global_param
param
;
void
test_no_instruments
()
{
int
rc
;
PFS_global_param
param
;
memset
(
&
param
,
0xFF
,
sizeof
(
param
));
param
.
m_enabled
=
true
;
...
...
@@ -86,7 +87,6 @@ void test_no_instances()
PFS_file
*
file
;
PFS_socket
*
socket
;
PFS_table
*
table
;
PFS_global_param
param
;
memset
(
&
param
,
0xFF
,
sizeof
(
param
));
param
.
m_enabled
=
true
;
...
...
@@ -227,7 +227,6 @@ void test_with_instances()
PFS_socket
*
socket_2
;
PFS_table
*
table_1
;
PFS_table
*
table_2
;
PFS_global_param
param
;
memset
(
&
param
,
0xFF
,
sizeof
(
param
));
param
.
m_enabled
=
true
;
...
...
@@ -417,6 +416,6 @@ int main(int, char **)
plan
(
103
);
MY_INIT
(
"pfs_instr-t"
);
do_all_tests
();
return
0
;
return
(
exit_status
())
;
}
storage/perfschema/unittest/pfs_instr_class-oom-t.cc
View file @
24ff1793
/* Copyright (c) 2008, 201
5
, Oracle and/or its affiliates. All rights reserved.
/* Copyright (c) 2008, 201
7
, Oracle and/or its affiliates. All rights reserved.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
...
...
@@ -67,6 +67,6 @@ int main(int, char **)
plan
(
9
);
MY_INIT
(
"pfs_instr_info-oom-t"
);
do_all_tests
();
return
0
;
return
(
exit_status
())
;
}
storage/perfschema/unittest/pfs_instr_class-t.cc
View file @
24ff1793
/* Copyright (c) 2008, 201
5
, Oracle and/or its affiliates. All rights reserved.
/* Copyright (c) 2008, 201
7
, Oracle and/or its affiliates. All rights reserved.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
...
...
@@ -673,6 +673,6 @@ int main(int, char **)
plan
(
181
);
MY_INIT
(
"pfs_instr_info-t"
);
do_all_tests
();
return
0
;
return
(
exit_status
())
;
}
storage/perfschema/unittest/pfs_misc-t.cc
View file @
24ff1793
/* Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
/* Copyright (c) 2015,
2017,
Oracle and/or its affiliates. All rights reserved.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
...
...
@@ -66,6 +66,6 @@ int main(int, char **)
plan
(
2
);
MY_INIT
(
"pfs_misc-t"
);
do_all_tests
();
return
exit_status
(
);
return
(
exit_status
()
);
}
storage/perfschema/unittest/pfs_timer-t.cc
View file @
24ff1793
/* Copyright (c) 2008, 201
1
, Oracle and/or its affiliates. All rights reserved.
/* Copyright (c) 2008, 201
7
, Oracle and/or its affiliates. All rights reserved.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
...
...
@@ -117,6 +117,6 @@ int main(int, char **)
plan
(
5
);
MY_INIT
(
"pfs_timer-t"
);
do_all_tests
();
return
0
;
return
(
exit_status
())
;
}
storage/perfschema/unittest/pfs_user-oom-t.cc
View file @
24ff1793
/* Copyright (c) 2011, 201
5
, Oracle and/or its affiliates. All rights reserved.
/* Copyright (c) 2011, 201
7
, Oracle and/or its affiliates. All rights reserved.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
...
...
@@ -110,6 +110,6 @@ int main(int, char **)
plan
(
6
);
MY_INIT
(
"pfs_user-oom-t"
);
do_all_tests
();
return
0
;
return
(
exit_status
())
;
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment