Merge lp:~abychko/percona-server/bug1050654-5.6 into lp:percona-server/5.6

Proposed by Alexey Bychko
Status: Merged
Approved by: Alexey Kopytov
Approved revision: no longer in the source branch.
Merged at revision: 341
Proposed branch: lp:~abychko/percona-server/bug1050654-5.6
Merge into: lp:percona-server/5.6
Prerequisite: lp:~ignacio-nin/percona-server/5.6-bug1165098
Diff against target: 159 lines (+155/-0)
1 file modified
Percona-Server/libmysql/libmysql.map (+155/-0)
To merge this branch: bzr merge lp:~abychko/percona-server/bug1050654-5.6
Reviewer Review Type Date Requested Status
Alexey Kopytov (community) Approve
Review via email: mp+158954@code.launchpad.net

This proposal supersedes a proposal from 2013-04-15.

Description of the change

bug 1050654, fix for 5.6
[+] additional merge from bug 1165098, to get build files with correct bzr ids. last time some part of merge from 5.5 was lost while fighting additional and unexpected file-ids issue
[+] added Fedora linker script to the build to split symbols by versions
[+] added 18_1 symbols for 5.6
[+] added symbols for compatibility
php build and php bundled tests are ok
#####################################
this commit is port from Fedora with small changes for Percona Server v5.6

To post a comment you must log in.
Revision history for this message
Alexey Kopytov (akopytov) wrote : Posted in a previous version of this proposal

Alexey,

I don't see changes to mysqladmin.cc we discussed last week. I.e. it still uses the undocumented make_() API calls, though with your patch they are not even exported?

review: Needs Information
Revision history for this message
Alexey Bychko (abychko) wrote : Posted in a previous version of this proposal

Alexey, changes are in build/rpm/mysql-dubious-exports.patch, similar to 5.5.
may be better to finish that patch for 5.5 and 5.6?

Revision history for this message
Alexey Bychko (abychko) wrote : Posted in a previous version of this proposal

LP diff can't be generated, for some unknown reason. seems branch should be reviewed by looking at the commit directly

message from LP:

Launchpad encountered an internal error during the following operation:
generating the diff for a merge proposal. It was logged with id
OOPS-d50983ee4df7d5cda50c9990c5425537. Sorry for the inconvenience.

Revision history for this message
Alexey Kopytov (akopytov) wrote : Posted in a previous version of this proposal

I did review the revision in a local clone of the lp:~abychko/percona-server/bug1050654-5.6 branch:

$ bzr pull --overwrite
Using saved parent location: bzr+ssh://bazaar.launchpad.net/~abychko/percona-server/bug1050654-5.6/
No revisions or tags to pull.
$ bzr diff -c-1 | grep sha1
$

Revision history for this message
Alexey Kopytov (akopytov) wrote :

But, but, but... I still don't see the discussed changes in the diff? I also doublechecked with a local clone.

review: Needs Fixing
Revision history for this message
Alexey Bychko (abychko) wrote :
Revision history for this message
Alexey Kopytov (akopytov) wrote :

Indeed, sorry. This was partially LP's fault with showing a wrong diff, and my fault with checking the code rather than the patch.

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== added file 'Percona-Server/libmysql/libmysql.map'
2--- Percona-Server/libmysql/libmysql.map 1970-01-01 00:00:00 +0000
3+++ Percona-Server/libmysql/libmysql.map 2013-04-15 15:09:43 +0000
4@@ -0,0 +1,155 @@
5+# symbols exported from mysql 5.1
6+libmysqlclient_16 {
7+ global:
8+ _fini;
9+ _init;
10+ my_init;
11+ myodbc_remove_escape;
12+ mysql_affected_rows;
13+ mysql_autocommit;
14+ mysql_change_user;
15+ mysql_character_set_name;
16+ mysql_close;
17+ mysql_commit;
18+ mysql_data_seek;
19+ mysql_debug;
20+ mysql_dump_debug_info;
21+ mysql_embedded;
22+ mysql_eof;
23+ mysql_errno;
24+ mysql_error;
25+ mysql_escape_string;
26+ mysql_fetch_field;
27+ mysql_fetch_field_direct;
28+ mysql_fetch_fields;
29+ mysql_fetch_lengths;
30+ mysql_fetch_row;
31+ mysql_field_count;
32+ mysql_field_seek;
33+ mysql_field_tell;
34+ mysql_free_result;
35+ mysql_get_character_set_info;
36+ mysql_get_client_info;
37+ mysql_get_client_version;
38+ mysql_get_host_info;
39+ mysql_get_parameters;
40+ mysql_get_proto_info;
41+ mysql_get_server_info;
42+ mysql_get_server_version;
43+ mysql_get_ssl_cipher;
44+ mysql_hex_string;
45+ mysql_info;
46+ mysql_init;
47+ mysql_insert_id;
48+ mysql_kill;
49+ mysql_list_dbs;
50+ mysql_list_fields;
51+ mysql_list_processes;
52+ mysql_list_tables;
53+ mysql_more_results;
54+ mysql_next_result;
55+ mysql_num_fields;
56+ mysql_num_rows;
57+ mysql_options;
58+ mysql_ping;
59+ mysql_query;
60+ mysql_read_query_result;
61+ mysql_real_connect;
62+ mysql_real_escape_string;
63+ mysql_real_query;
64+ mysql_refresh;
65+ mysql_rollback;
66+ mysql_row_seek;
67+ mysql_row_tell;
68+ mysql_select_db;
69+ mysql_send_query;
70+ mysql_server_end;
71+ mysql_server_init;
72+ mysql_set_character_set;
73+ mysql_set_local_infile_default;
74+ mysql_set_local_infile_handler;
75+ mysql_set_server_option;
76+ mysql_shutdown;
77+ mysql_sqlstate;
78+ mysql_ssl_set;
79+ mysql_stat;
80+ mysql_stmt_affected_rows;
81+ mysql_stmt_attr_get;
82+ mysql_stmt_attr_set;
83+ mysql_stmt_bind_param;
84+ mysql_stmt_bind_result;
85+ mysql_stmt_close;
86+ mysql_stmt_data_seek;
87+ mysql_stmt_errno;
88+ mysql_stmt_error;
89+ mysql_stmt_execute;
90+ mysql_stmt_fetch;
91+ mysql_stmt_fetch_column;
92+ mysql_stmt_field_count;
93+ mysql_stmt_free_result;
94+ mysql_stmt_init;
95+ mysql_stmt_insert_id;
96+ mysql_stmt_num_rows;
97+ mysql_stmt_param_count;
98+ mysql_stmt_param_metadata;
99+ mysql_stmt_prepare;
100+ mysql_stmt_reset;
101+ mysql_stmt_result_metadata;
102+ mysql_stmt_row_seek;
103+ mysql_stmt_row_tell;
104+ mysql_stmt_send_long_data;
105+ mysql_stmt_sqlstate;
106+ mysql_stmt_store_result;
107+ mysql_store_result;
108+ mysql_thread_end;
109+ mysql_thread_id;
110+ mysql_thread_init;
111+ mysql_thread_safe;
112+ mysql_use_result;
113+ mysql_warning_count;
114+# These are documented in Paul DuBois' MySQL book, so we treat them as part
115+# of the de-facto API.
116+ free_defaults;
117+ handle_options;
118+ load_defaults;
119+ my_print_help;
120+# This isn't really documented anywhere, but it seems to be part of the
121+# de-facto API as well. We're not going to export the deprecated version
122+# make_scrambled_password, however.
123+ my_make_scrambled_password;
124+# This really shouldn't be exported, but some applications use it as a
125+# workaround for inadequate threading support; see bug #846602
126+ THR_KEY_mysys;
127+ local:
128+ *;
129+};
130+# symbols added in mysql 5.5
131+libmysqlclient_18 {
132+ global:
133+ mysql_client_find_plugin;
134+ mysql_client_register_plugin;
135+ mysql_load_plugin;
136+ mysql_load_plugin_v;
137+ mysql_plugin_options;
138+ mysql_stmt_next_result;
139+#
140+# Ideally the following symbols wouldn't be exported, but various applications
141+# require them. We limit the namespace damage by prefixing mysql_
142+# (see mysql-dubious-exports.patch), which means the symbols are not present
143+# in libmysqlclient_16.
144+#
145+# mysql-connector-odbc requires these
146+ mysql_default_charset_info;
147+ mysql_get_charset;
148+ mysql_get_charset_by_csname;
149+ mysql_net_realloc;
150+# PHP's mysqli.so requires this (via the ER() macro)
151+ mysql_client_errors;
152+# mydumper requires this (added by remi)
153+ my_net_read;
154+};
155+# symbols added in mysql 5.6
156+libmysqlclient_18_1 {
157+ global:
158+ get_tty_password;
159+};

Subscribers

People subscribed via source and target branches