While we're on the topic, how does MariaDB decide which language features are mature enough to use in the software? For example, do you look at a list of supported operating systems, and for those operating systems, look at whether or not the supplied version of g++ supports a given language feature well enough? On Mon, Feb 18, 2013 at 12:47 PM, Sergei Golubchik <serg@askmonty.org> wrote:
Hi, Christian!
On Feb 18, Christian Convey wrote:
Thanks Sergei. So why is it used in some places, but not in the server code?
STL is pretty much ok starting from 10.0.
Exceptions - they aren't used in the server yet, we'd need to make a decision that they're ok to use. And we haven't discussed that.
Regards, Sergei
On Mon, Feb 18, 2013 at 3:00 AM, Sergei Golubchik <serg@askmonty.org> wrote:
On Feb 17, Christian Convey wrote:
I just read in Pachev's "MySQL Internals" book that C++ STL and exceptions aren't allowed in the MySQL code.
Are those restrictions also in effect for MariaDB? If so, can anyone explain the reason for them?
The reason is historical. When Sasha was in MySQL, STL and exceptions just were too buggy for us to use - in a heavily multi-threaded code of MySQL.
It's no longer true. We use exceptions - although not in the server code, but OQGraph engine uses them. And STL - MySQL server uses STL now and in 10.0 we're merging this code, so we're getting it now too.