errors in i_s.cc

Bug #1218417 reported by Goetz T. Fischer
18
This bug affects 3 people
Affects Status Importance Assigned to Milestone
Percona Server moved to https://jira.percona.com/projects/PS
Invalid
Undecided
Unassigned
5.1
Invalid
Undecided
Unassigned
5.5
Fix Released
Medium
Sergei Glushchenko
5.6
Invalid
Undecided
Unassigned

Bug Description

debian6, pgi 12.8, percona 5.5.33 rel 31.1
================================

[ 52%] Building CXX object storage/innobase/CMakeFiles/innobase.dir/handler/i_s.cc.o
cd /devel/Percona-Server-5.5.33-rel31.1/storage/innobase && /opt/pgi/linux86-64/12.8/bin/pgCC -DHAVE_RESPONSE_TIME_DISTRIBUTION -DDBUG_OFF -DHAVE_CONFIG_H -DSIZEOF_PTHREAD_T=8 -tp=core2 -m64 -O4 -mp=nonuma -I/devel/Percona-Server-5.5.33-rel31.1/include -I/devel/Percona-Server-5.5.33-rel31.1/storage/innobase/include -I/devel/Percona-Server-5.5.33-rel31.1/storage/innobase/handler -I/devel/Percona-Server-5.5.33-rel31.1/sql -I/devel/Percona-Server-5.5.33-rel31.1/regex -tp=core2 -m64 -O4 -mp=nonuma -DUNIV_LINUX -D_GNU_SOURCE=1 -o CMakeFiles/innobase.dir/handler/i_s.cc.o -c /devel/Percona-Server-5.5.33-rel31.1/storage/innobase/handler/i_s.cc
"/devel/Percona-Server-5.5.33-rel31.1/include/m_string.h", line 85: warning:
          omission of exception specification is incompatible with previous
          function "stpcpy" (declared at line 569 of "/usr/include/string.h")
  extern char *stpcpy(char *, const char *); /* For AIX with gcc 2.95.3 */
                                           ^

"/devel/Percona-Server-5.5.33-rel31.1/sql/spatial.h", line 567: warning:
          conversion from pointer to smaller integer
    my_aligned_storage<sizeof(Gis_point), MY_ALIGNOF(Gis_point)> {};
                                          ^

"/devel/Percona-Server-5.5.33-rel31.1/storage/innobase/handler/i_s.cc", line 334: error:
          identifier "TRX_QUE_STATE_STR_MAX_LEN" is undefined
    STRUCT_FLD(field_length, TRX_QUE_STATE_STR_MAX_LEN + 1),
    ^

"/devel/Percona-Server-5.5.33-rel31.1/storage/innobase/handler/i_s.cc", line 3837: error:
          identifier "SYS_TABLES" is undefined
   rec = dict_startscan_system(&pcur, &mtr, SYS_TABLES);
                                            ^

"/devel/Percona-Server-5.5.33-rel31.1/storage/innobase/handler/i_s.cc", line 3837: error:
          identifier "dict_startscan_system" is undefined
   rec = dict_startscan_system(&pcur, &mtr, SYS_TABLES);
         ^

"/devel/Percona-Server-5.5.33-rel31.1/storage/innobase/handler/i_s.cc", line 3846: error:
          identifier "DICT_TABLE_LOAD_FROM_RECORD" is undefined
     heap, rec, &table_rec, DICT_TABLE_LOAD_FROM_RECORD);
                            ^

"/devel/Percona-Server-5.5.33-rel31.1/storage/innobase/handler/i_s.cc", line 3845: error:
          identifier "dict_process_sys_tables_rec" is undefined
    err_msg = dict_process_sys_tables_rec(
              ^

"/devel/Percona-Server-5.5.33-rel31.1/storage/innobase/handler/i_s.cc", line 3871: error:
          identifier "dict_getnext_system" is undefined
    rec = dict_getnext_system(&pcur, &mtr);
          ^

"/devel/Percona-Server-5.5.33-rel31.1/storage/innobase/handler/i_s.cc", line 4146: error:
          identifier "SYS_TABLES" is undefined
   rec = dict_startscan_system(&pcur, &mtr, SYS_TABLES);
                                            ^

"/devel/Percona-Server-5.5.33-rel31.1/storage/innobase/handler/i_s.cc", line 4146: error:
          identifier "dict_startscan_system" is undefined
   rec = dict_startscan_system(&pcur, &mtr, SYS_TABLES);
         ^

"/devel/Percona-Server-5.5.33-rel31.1/storage/innobase/handler/i_s.cc", line 4155: error:
          identifier "DICT_TABLE_LOAD_FROM_CACHE" is undefined
     heap, rec, &table_rec, DICT_TABLE_LOAD_FROM_CACHE);
                            ^

"/devel/Percona-Server-5.5.33-rel31.1/storage/innobase/handler/i_s.cc", line 4154: error:
          identifier "dict_process_sys_tables_rec" is undefined
    err_msg = dict_process_sys_tables_rec(
              ^

"/devel/Percona-Server-5.5.33-rel31.1/storage/innobase/handler/i_s.cc", line 4174: error:
          identifier "dict_getnext_system" is undefined
    rec = dict_getnext_system(&pcur, &mtr);
          ^

"/devel/Percona-Server-5.5.33-rel31.1/storage/innobase/handler/i_s.cc", line 4397: error:
          identifier "SYS_INDEXES" is undefined
   rec = dict_startscan_system(&pcur, &mtr, SYS_INDEXES);
                                            ^

"/devel/Percona-Server-5.5.33-rel31.1/storage/innobase/handler/i_s.cc", line 4397: error:
          identifier "dict_startscan_system" is undefined
   rec = dict_startscan_system(&pcur, &mtr, SYS_INDEXES);
         ^

"/devel/Percona-Server-5.5.33-rel31.1/storage/innobase/handler/i_s.cc", line 4407: error:
          identifier "dict_process_sys_indexes_rec" is undefined
    err_msg = dict_process_sys_indexes_rec(heap, rec, &index_rec,
              ^

"/devel/Percona-Server-5.5.33-rel31.1/storage/innobase/handler/i_s.cc", line 4427: error:
          identifier "dict_getnext_system" is undefined
    rec = dict_getnext_system(&pcur, &mtr);
          ^

"/devel/Percona-Server-5.5.33-rel31.1/storage/innobase/handler/i_s.cc", line 4639: error:
          identifier "SYS_COLUMNS" is undefined
   rec = dict_startscan_system(&pcur, &mtr, SYS_COLUMNS);
                                            ^

"/devel/Percona-Server-5.5.33-rel31.1/storage/innobase/handler/i_s.cc", line 4639: error:
          identifier "dict_startscan_system" is undefined
   rec = dict_startscan_system(&pcur, &mtr, SYS_COLUMNS);
         ^

"/devel/Percona-Server-5.5.33-rel31.1/storage/innobase/handler/i_s.cc", line 4648: error:
          identifier "dict_process_sys_columns_rec" is undefined
    err_msg = dict_process_sys_columns_rec(heap, rec, &column_rec,
              ^

"/devel/Percona-Server-5.5.33-rel31.1/storage/innobase/handler/i_s.cc", line 4669: error:
          identifier "dict_getnext_system" is undefined
    rec = dict_getnext_system(&pcur, &mtr);
          ^

"/devel/Percona-Server-5.5.33-rel31.1/storage/innobase/handler/i_s.cc", line 4851: error:
          identifier "SYS_FIELDS" is undefined
   rec = dict_startscan_system(&pcur, &mtr, SYS_FIELDS);
                                            ^

"/devel/Percona-Server-5.5.33-rel31.1/storage/innobase/handler/i_s.cc", line 4851: error:
          identifier "dict_startscan_system" is undefined
   rec = dict_startscan_system(&pcur, &mtr, SYS_FIELDS);
         ^

"/devel/Percona-Server-5.5.33-rel31.1/storage/innobase/handler/i_s.cc", line 4861: error:
          identifier "dict_process_sys_fields_rec" is undefined
    err_msg = dict_process_sys_fields_rec(heap, rec, &field_rec,
              ^

"/devel/Percona-Server-5.5.33-rel31.1/storage/innobase/handler/i_s.cc", line 4882: error:
          identifier "dict_getnext_system" is undefined
    rec = dict_getnext_system(&pcur, &mtr);
          ^

"/devel/Percona-Server-5.5.33-rel31.1/storage/innobase/handler/i_s.cc", line 5082: error:
          identifier "SYS_FOREIGN" is undefined
   rec = dict_startscan_system(&pcur, &mtr, SYS_FOREIGN);
                                            ^

"/devel/Percona-Server-5.5.33-rel31.1/storage/innobase/handler/i_s.cc", line 5082: error:
          identifier "dict_startscan_system" is undefined
   rec = dict_startscan_system(&pcur, &mtr, SYS_FOREIGN);
         ^

"/devel/Percona-Server-5.5.33-rel31.1/storage/innobase/handler/i_s.cc", line 5090: error:
          identifier "dict_process_sys_foreign_rec" is undefined
    err_msg = dict_process_sys_foreign_rec(heap, rec, &foreign_rec);
              ^

"/devel/Percona-Server-5.5.33-rel31.1/storage/innobase/handler/i_s.cc", line 5109: error:
          identifier "dict_getnext_system" is undefined
    rec = dict_getnext_system(&pcur, &mtr);
          ^

"/devel/Percona-Server-5.5.33-rel31.1/storage/innobase/handler/i_s.cc", line 5298: error:
          identifier "SYS_FOREIGN_COLS" is undefined
   rec = dict_startscan_system(&pcur, &mtr, SYS_FOREIGN_COLS);
                                            ^

"/devel/Percona-Server-5.5.33-rel31.1/storage/innobase/handler/i_s.cc", line 5298: error:
          identifier "dict_startscan_system" is undefined
   rec = dict_startscan_system(&pcur, &mtr, SYS_FOREIGN_COLS);
         ^

"/devel/Percona-Server-5.5.33-rel31.1/storage/innobase/handler/i_s.cc", line 5308: error:
          identifier "dict_process_sys_foreign_col_rec" is undefined
    err_msg = dict_process_sys_foreign_col_rec(
              ^

"/devel/Percona-Server-5.5.33-rel31.1/storage/innobase/handler/i_s.cc", line 5329: error:
          identifier "dict_getnext_system" is undefined
    rec = dict_getnext_system(&pcur, &mtr);
          ^

"/devel/Percona-Server-5.5.33-rel31.1/storage/innobase/handler/i_s.cc", line 5519: error:
          identifier "SYS_STATS" is undefined
   rec = dict_startscan_system(&pcur, &mtr, SYS_STATS);
                                            ^

"/devel/Percona-Server-5.5.33-rel31.1/storage/innobase/handler/i_s.cc", line 5519: error:
          identifier "dict_startscan_system" is undefined
   rec = dict_startscan_system(&pcur, &mtr, SYS_STATS);
         ^

"/devel/Percona-Server-5.5.33-rel31.1/storage/innobase/handler/i_s.cc", line 5529: error:
          identifier "dict_process_sys_stats_rec" is undefined
    err_msg = dict_process_sys_stats_rec(
              ^

"/devel/Percona-Server-5.5.33-rel31.1/storage/innobase/handler/i_s.cc", line 5550: error:
          identifier "dict_getnext_system" is undefined
    rec = dict_getnext_system(&pcur, &mtr);
          ^

"/devel/Percona-Server-5.5.33-rel31.1/storage/innobase/handler/i_s.cc", line 6249: error:
          identifier "buf_LRU_file_dump" is undefined
    if (buf_LRU_file_dump()) {
        ^

"/devel/Percona-Server-5.5.33-rel31.1/storage/innobase/handler/i_s.cc", line 6264: error:
          identifier "buf_LRU_file_restore" is undefined
    if (buf_LRU_file_restore()) {
        ^

"/devel/Percona-Server-5.5.33-rel31.1/storage/innobase/handler/i_s.cc", line 7516: error:
          identifier "srv_max_changed_pages" is undefined
         (!srv_max_changed_pages ||
           ^

38 errors detected in the compilation of "/devel/Percona-Server-5.5.33-rel31.1/storage/innobase/handler/i_s.cc".
make[2]: *** [storage/innobase/CMakeFiles/innobase.dir/handler/i_s.cc.o] Error 2

Related branches

Revision history for this message
Valerii Kravchuk (valerii-kravchuk) wrote :

Please, send the exact commands you've used to build.

Changed in percona-server:
status: New → Incomplete
Revision history for this message
Goetz T. Fischer (g-fischer) wrote :

you mean the cmake options?

Revision history for this message
Valerii Kravchuk (valerii-kravchuk) wrote :

Yes, cmake command line options, CFLAGS set etc

Revision history for this message
Goetz T. Fischer (g-fischer) wrote :
Download full text (3.2 KiB)

sure, here they are:

CMAKE_BUILD_TYPE
CMAKE_INSTALL_PREFIX /usr/local/p5533r311
COMMUNITY_BUILD OFF
ENABLED_PROFILING OFF
ENABLE_DEBUG_SYNC OFF
ENABLE_DTRACE OFF
ENABLE_GCOV OFF
INSTALL_LAYOUT STANDALONE
MAX_INDEXES 64
MYSQL_DATADIR /usr/local/mysql/data
MYSQL_MAINTAINER_MODE OFF
WITHOUT_RESPONSE_TIME_DISTRIBU OFF
WITH_ARCHIVE_STORAGE_ENGINE OFF
WITH_BLACKHOLE_STORAGE_ENGINE OFF
WITH_DEBUG OFF
WITH_EMBEDDED_SERVER OFF
WITH_EXTRA_CHARSETS all
WITH_FEDERATED_STORAGE_ENGINE OFF
WITH_INNOBASE_STORAGE_ENGINE ON
WITH_LIBEDIT ON
WITH_LIBWRAP OFF
WITH_PAM OFF
WITH_PARTITION_STORAGE_ENGINE ON
WITH_PERFSCHEMA_STORAGE_ENGINE ON
WITH_PIC OFF
WITH_READLINE OFF
WITH_SSL no
WITH_UNIT_TESTS OFF
WITH_VALGRIND OFF
WITH_ZLIB system

CC=pgcc
CFLAGS=-tp=core2 -m64 -O4 -mp=nonuma
CPPFLAGS=-tp=core2 -m64 -O4 -mp=nonuma
CXXFLAGS=-tp=core2 -m64 -O4 -mp=nonu...

Read more...

Changed in percona-server:
status: Incomplete → New
Revision history for this message
Goetz T. Fischer (g-fischer) wrote :

in case it helps, the same happens when using the intel compiler so that part might not have been tested with anything else except gcc.
the "normal" mysql 5.5.33 builds fine btw.

Revision history for this message
Vadim Korchagin (vadim-p) wrote :
Download full text (9.1 KiB)

I have almost the same compile error with cmake options:

CFLAGS=" -O2 -pipe -march=native " \
CC="gcc47" \
CXXFLAGS=" -O2 -pipe -march=native " \
CXX="g++47" \
cmake . -DBUILD_CONFIG=mysql_release -DFEATURE_SET=community \
-DWITH_EMBEDDED_SERVER=OFF \
-DCMAKE_INSTALL_PREFIX=/usr/local \
-DCMAKE_CXX_FLAGS="-O2 -pipe -march=native" \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DINSTALL_DOCDIR=share/doc/mysql \
-DINSTALL_DOCREADMEDIR=share/doc/mysql \
-DINSTALL_INCLUDEDIR=include/mysql \
-DINSTALL_INFODIR=info \
-DINSTALL_LIBDIR=lib/mysql \
-DINSTALL_MANDIR=man \
-DINSTALL_MYSQLDATADIR=/var/db/mysql \
-DINSTALL_MYSQLSHAREDIR=share/mysql \
-DINSTALL_MYSQLTESTDIR=share/mysql/tests \
-DINSTALL_PLUGINDIR=lib/mysql/plugin \
-DINSTALL_SBINDIR=libexec \
-DINSTALL_SCRIPTDIR=bin \
-DINSTALL_SHAREDIR=share \
-DINSTALL_SQLBENCHDIR=share/mysql \
-DINSTALL_SUPPORTFILESDIR=share/mysql \
-DWITH_LIBWRAP=1 \
-DWITHOUT_AUTH_PAM=1 \
-DWITHOUT_AUTH_PAM_COMPAT=1 \
-DWITHOUT_DIALOG=1

warp# gmake
-- Running cmake version 2.8.7
-- MySQL 5.5.33
-- Packaging as: mysql-5.5.33-FreeBSD9.1-x86_64
-- Configuring done
-- Generating done
-- Build files have been written to: /home/sburn/install/Percona-5.5.33-31.1
[ 0%] Built target INFO_BIN
[ 0%] Built target INFO_SRC
[ 2%] Built target zlib
[ 4%] Built target yassl
[ 7%] Built target taocrypt
[ 11%] Built target readline
[ 17%] Built target strings
[ 32%] Built target mysys
[ 33%] Built target dbug
[ 33%] Built target comp_err
[ 33%] Built target GenError
[ 33%] Built target blackhole
[ 41%] Built target myisam
[ 41%] Built target myisam_ftdump
[ 41%] Built target myisamchk
[ 41%] Built target myisamlog
[ 42%] Built target myisampack
[ 42%] Building CXX object storage/innobase/CMakeFiles/innobase.dir/handler/i_s.cc.o
In file included from /home/sburn/install/Percona-5.5.33-31.1/include/my_global.h:351:0,
                 from /home/sburn/install/Percona-5.5.33-31.1/sql/unireg.h:20,
                 from /home/sburn/install/Percona-5.5.33-31.1/sql/item.h:25,
                 from /home/sburn/install/Percona-5.5.33-31.1/storage/innobase/handler/i_s.cc:27:
/usr/include/sys/timeb.h:42:2: warning: #warning "this file includes <sys/timeb.h> which is deprecated" [-Wcpp]
/home/sburn/install/Percona-5.5.33-31.1/storage/innobase/handler/i_s.cc:334:3: error: 'TRX_QUE_STATE_STR_MAX_LEN' was not declared in this scope
/home/sburn/install/Percona-5.5.33-31.1/storage/innobase/handler/i_s.cc: In function 'int i_s_sys_tables_fill_table(THD*, TABLE_LIST*, COND*)':
/home/sburn/install/Percona-5.5.33-31.1/storage/innobase/handler/i_s.cc:3837:43: error: 'SYS_TABLES' was not declared in this scope
/home/sburn/install/Percona-5.5.33-31.1/storage/innobase/handler/i_s.cc:3837:53: error: 'dict_startscan_system' was not declared in this scope
/home/sburn/install/Percona-5.5.33-31.1/storage/innobase/handler/i_s.cc:3846:27: error: 'DICT_TABLE_LOAD_FROM_RECORD' was not declared in this scope
/home/sburn/install/Percona-5.5.33-31.1/storage/innobase/handler/i_s.cc:3846:54: error: 'dict_process_sys_tables_rec' was not declared in this scope
/home/sburn/install/Percona-5.5.33-31.1/storage/innobase/handler/i_s.cc:3871:40: error: 'di...

Read more...

Revision history for this message
Vadim Korchagin (vadim-p) wrote :

There is no such compile error in 5.5.32-rel31.0

Revision history for this message
Goetz T. Fischer (g-fischer) wrote :

i can confirm that, 5.5.32 builds fine except a few minor issues:

===============================================================================
"/devel/Percona-Server-5.5.32-rel31.0/sql/mysqld.cc", line 2565: error:
          argument of type "rlimit *" is incompatible with parameter of type
          "const rlimit64 *"
      if (setrlimit(RLIMIT_CORE, &rl) && global_system_variables.log_warnings)
                                 ^

"/devel/Percona-Server-5.5.32-rel31.0/sql/query_response_time.cc", line 161: error:
          argument of type "const pthread_mutex_t *" is incompatible with
          parameter of type "pthread_mutex_t *"
      my_atomic_rwlock_rdlock(&time_collector_lock);
      ^

"/devel/Percona-Server-5.5.32-rel31.0/sql/query_response_time.cc", line 163: error:
          argument of type "const pthread_mutex_t *" is incompatible with
          parameter of type "pthread_mutex_t *"
      my_atomic_rwlock_rdunlock(&time_collector_lock);
      ^

"/devel/Percona-Server-5.5.32-rel31.0/sql/query_response_time.cc", line 168: error:
          argument of type "const pthread_mutex_t *" is incompatible with
          parameter of type "pthread_mutex_t *"
      my_atomic_rwlock_rdlock(&time_collector_lock);
      ^

"/devel/Percona-Server-5.5.32-rel31.0/sql/query_response_time.cc", line 170: error:
          argument of type "const pthread_mutex_t *" is incompatible with
          parameter of type "pthread_mutex_t *"
      my_atomic_rwlock_rdunlock(&time_collector_lock);
      ^
===============================================================================

which i solved by using respective typecasts.

Revision history for this message
Anthony (anton-0) wrote :

I had the same problem, solved it by adding
#include "trx0trx.h"
#include "dict0load.h"
#include "buf0lru.h"
#include "srv0srv.h"
to the end of the "extern" block at the beginning of storage/innobase/handler/i_s.cc

Revision history for this message
Sergei Glushchenko (sergei.glushchenko) wrote :

Seeing this both with apple gcc 4.2 and clang 5.0 on PS 5.5 trunk. PS 5.1 and 5.6 are not affected. MySQL 5.5 is fine as well.

Revision history for this message
Shahriyar Rzayev (rzayev-sehriyar) wrote :

Percona now uses JIRA for bug reports so this bug report is migrated to: https://jira.percona.com/browse/PS-3015

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.