List:Maria Storage Engine« Previous MessageNext Message »
From:Vladislav Vaintroub Date:May 27 2008 9:17am
Subject:RE: LOCK_uuid_short in mysql-maria
View as plain text  
Hi Guilhem,

the problem was name mangling. Microsoft mangles both function *and*
variable names in C++.
The result was unresolved symbol error during the link.

Wrapping a variable in C_MODE_START/C_MODE_END definitely helps in this
case.

>, do you remember if one tried adding a
> C_MODE_START/C_MODE_END around the "extern LOCK_uuid_generator" of
> mysql_priv.h

If I remember correct, this was my first try, but then serg noticed that 2
UUID generators( "normal" uuids and "short" ones)  are completely different
things and do not have to wait for each other.

Wlad



> -----Original Message-----
> From: Guilhem Bichot [mailto:guilhem@stripped]
> Sent: Tuesday, May 27, 2008 10:38 AM
> To: vaintroub@stripped
> Cc: maria@stripped
> Subject: LOCK_uuid_short in mysql-maria
> 
> Hello,
> 
> I'm going through the changes which we made into Maria compared to 5.1
> (to be sure I understand them before merging them into 6.0 :) and I
> have a question about that one
> vvaintroub/Wlad@vaio.
> Thu 2008-01-10 13:21:53 +0100
> Windows fixes
> ...
> -remove LOCK_uuid_generator from C++ files to avoid linker errors
> 
> What was the problem with linker: that LOCK_uuid_generator, present in
> mysys (so, C library) could not be invoked from C++ object files of
> sql/ ?
> Was that the only reason? If so, do you remember if one tried adding a
> C_MODE_START/C_MODE_END around the "extern LOCK_uuid_generator" of
> mysql_priv.h? I could try this as an alternative (would save one
> mutex).
> 
> Thank you for your help.
> 
> --
>    __  ___     ___ ____  __
>   /  |/  /_ __/ __/ __ \/ /    Mr. Guilhem Bichot <guilhem@stripped>
>  / /|_/ / // /\ \/ /_/ / /__   MySQL France, Lead Software Engineer
> /_/  /_/\_, /___/\___\_\___/   Bordeaux, France
>        <___/   www.mysql.com

Thread
LOCK_uuid_short in mysql-mariaGuilhem Bichot27 May
  • RE: LOCK_uuid_short in mysql-mariaVladislav Vaintroub27 May