From: Massimiliano M. <mmi...@ab...> - 2004-12-21 10:20:15
|
Hi Ben, I followed your steps. > You have a very interesting problem. One which I have never seen > before. Some call from you program is formatting 0.16 as 0,16. > > Can you tell me what system you are running. Also what compiler you are > using. My system is a Fedora Core 2: "Linux 2.6.5-1.358 #1 Sat May 8 09:04:50 EDT 2004 i686 i686 i386 GNU/Linux" I use gcc and my current version is: "Reading specs from /usr/lib/gcc-lib/i386-redhat-linux/3.3.3/specs Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --enable-shared --enable-threads=posix --disable-checking --disable-libunwind-exceptions --with-system-zlib --enable-__cxa_atexit --host=i386-redhat-linuxThread model: posix gcc version 3.3.3 20040412 (Red Hat Linux 3.3.3-7)" > > Can you try these for me: > > 1. In libpp_mysql/dbms.c can you uncomment the line: > > #define SHOW_SQL > > 2. Can you then make all you code again and try: > > perfparse-db-tool --update > The output is: "SQL: "SET AUTOCOMMIT=0" Rows: 0 SQL: "START TRANSACTION" Rows: 0 SQL: "SELECT rvalue,ctime from perfdata_registry WHERE host = 'dummy' AND rkey = 'pp/database/version'" Rows: 1 Warning, this stage may take some time: SQL: "EXPLAIN perfdata_service_raw" Rows: 6 SQL: "EXPLAIN perfdata_graphs" Rows: 6 Auto-convert database up to version 0.16... SQL: "SHOW TABLES" Rows: 13 SQL: "SELECT count(*) from perfdata_registry WHERE host = 'dummy' AND rkey = 'pp/database/version'" Rows: 1 SQL: "UPDATE perfdata_registry SET rvalue = '0,16', ctime = FROM_UNIXTIME(1103623029) WHERE host = 'dummy' AND rkey = 'pp/database/version'" SQL: "COMMIT" Rows: 0 SQL: "SET AUTOCOMMIT=1" Rows: 0 Conversions complete." > 3. Do you see this line: Can you return what you see? > > SQL: "UPDATE perfdata_registry SET rvalue = '0.16', ctime = > FROM_UNIXTIME(1103561358) WHERE host = 'dummy' AND rkey = > 'pp/database/version'" > > 4. Please remove the SHOW_SQL and recompile. > > 5. Can you launch MySQL and try: > > mysql> create table test ( value double ) type=innodb; > mysql> insert test values (0.15); > mysql> select * from test; > > Do you get 0.15 or 0,15? I get 0.15 > > If you could try these, this would be extremely useful to us! > > Kind regards, > Ben. Regards, Massimiliano |