Skip to content

Commit aab48c4

Browse files
author
V S Murthy Sidagam
committed
wl#9503: mysql string functionalities as a service for
mysql_server component (sub-worklog for wl6667) HLS: === What is the problem ? MySQL has a platform independent character set implementation. To minimize string conversions all strings in the server core have a character set attached to them that's carried along as further as possible. This is done through a special C++ class (String). Components may need to manipulate some of these String instances. But due to the fact that C++ classes don't travel well across heap boundaries (dll/exe etc) we need a C API for these class instances. Why only this much ? The full API for that would be very large. So this worklog implements only the minimum subset that the password validation component (and plugin) needs. How ? We take the existing composite plugin service (a wrapper around String methods) and break it up into multiple logically separate component services. This is a typical example for how re-engineering of existing plugin APIs into service APIs should go.
1 parent 5e8868f commit aab48c4

34 files changed

+2570
-8
lines changed

components/example/CMakeLists.txt

+13-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
1+
# Copyright (c) 2016, 2017, Oracle and/or its affiliates. All rights reserved.
22
#
33
# This program is free software; you can redistribute it and/or modify
44
# it under the terms of the GNU General Public License as published by
@@ -33,3 +33,15 @@ MYSQL_ADD_COMPONENT(example_component3
3333
example_component3.cc
3434
example_math_wrapping_imp.cc
3535
TEST MODULE)
36+
37+
MYSQL_ADD_COMPONENT(test_string_service
38+
test_string_service.cc
39+
TEST MODULE)
40+
41+
MYSQL_ADD_COMPONENT(test_string_service_long
42+
test_string_service_long.cc
43+
TEST MODULE)
44+
45+
MYSQL_ADD_COMPONENT(test_string_service_charset
46+
test_string_service_charset.cc
47+
TEST MODULE)

0 commit comments

Comments
 (0)