← Back to team overview

maria-developers team mailing list archive

Re: [JIRA] (MDEV-7063) Split String into logical components


Hi Rasmus,

I noticed you put this task on Sprint 10.1.7-2.

Did I miss some discussion about this?

From my understanding, Sergei and Monty were not enthusiastic about
this task (but I still think it should be helpful).


On 08/19/2015 06:26 PM, Rasmus Johansson (JIRA) wrote:

      [ https://mariadb.atlassian.net/browse/MDEV-7063?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Rasmus Johansson updated MDEV-7063:
     Sprint: 10.1.7-2

Split String into logical components

                 Key: MDEV-7063
                 URL: https://mariadb.atlassian.net/browse/MDEV-7063
             Project: MariaDB Server
          Issue Type: Task
            Reporter: Alexander Barkov
            Assignee: Michael Widenius
             Fix For: 10.1

The string class currently consists of the following components:
- memory allocation routines (using mysys)
- binary string routines
- character set aware routines.
Storage engines (e.g. ConnectSE) often need String-alike classes, but cannot use the current String implementation because of their own memory management system. So they have to reimplement the same set of functionality, but with their own memory managers. This is bug prone and makes duplicate code.
Also, in some cases it is useful to have character-set unaware strings (just array of bytes), and static strings without allocation.
This task is to split String into logical pieces:
1. class Static_binary_string
2. class Charset
3. class Static_character_string (#1 + #2)
4. class Memory_mysys
5. template<typename MEM> class String_with_alloc
6. class String (#3 + #5)
ConnectSE will use #5 (templace class String_with_alloc), in combination with their own memory allocator.

This message was sent by Atlassian JIRA