Bug #51027 Initial restart yields 'Pointer too large' in dbacc

Submitted: 9 Feb 2010 15:20 Modified: 16 Feb 2010 8:39
Reporter: Geert Vanderkelen Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Cluster: Cluster (NDB) storage engine Severity:S2 (Serious)
Version:mysql-5.1.41-ndb-6.3.31 OS:Any
Assigned to: Jonas Oreland CPU Architecture:Any

[9 Feb 2010 15:20] Geert Vanderkelen
Description:
Initial restart yields 'Pointer too large' in dbacc

When restarting data node initial, it reports a 'Pointer too large'
error. Data merory was at 99%, but same problems happens at 43%
DM usage. Index memory is not full in both cases.

 Message: Pointer too large (Internal error, programming error or missing error message, please report a bug)
 Error: 2306
 Error data: dbacc/DbaccMain.cpp
 Error object: DBACC (Line: 8112) 0x0000000a
 Version: mysql-5.1.41 ndb-6.3.31-GA

The data node out log has 8 times following output before the
above error:
 tab: 5 frag: 2 replicaP->nextLcp: 0
 scanning idx: 1 lcpId: 0 crashed replicas: 1 NOT VALID
 scanning idx: 0 lcpId: 0 crashed replicas: 1 NOT VALID
 - scanning idx: 2 lcpId: 0

And then following before the angle exites:
 RedoPageCache: avoided 0 (0/0) page-reads
 RedoOpenFileCache: Avoided 0 file-open/close closed: 0
 alloc_chunk(573962 16) - 
 706/0 (705/4294967295) switchover complete bucket 0 state: 1starting
 alloc_chunk(576555 16) - 
 Free extent: [ m_page_no: 205 m_file_no: 39 m_page_idx: 1370]
 Free extent: [ m_page_no: 65 m_file_no: 39 m_page_idx: 1365]
 Free extent: [ m_page_no: 146 m_file_no: 39 m_page_idx: 1368]
 Free extent: [ m_page_no: 97 m_file_no: 39 m_page_idx: 1366]
 Free extent: [ m_page_no: 240 m_file_no: 39 m_page_idx: 1371]
 Free extent: [ m_page_no: 33 m_file_no: 39 m_page_idx: 1364]
 Free extent: [ m_page_no: 175 m_file_no: 39 m_page_idx: 1369]
 Free extent: [ m_page_no: 129 m_file_no: 39 m_page_idx: 1367]

It seems also not always to happen at the same table.

Originally reported with 6.3.31, a similar problem happens with
6.3.20, but with different error:

 Message: Pointer too large (Internal error, programming error or missing error message, please report a bug)
 Error: 2306
 Error data: dbdih/DbdihMain.cpp
 Error object: DBDIH (Line: 14765) 0x0000000a
 Version: mysql-5.1.30 ndb-6.3.20-GA

It looks similar to bug #48700, but 

How to repeat:
Not repeated (yet).
[15 Feb 2010 10:20] Jonas Oreland
Found problem: it's introduced in http://bugs.mysql.com/bug.php?id=47818
The problem occurs if IndexMemory (for whatever reason) becomes non-linear
(i.e contains holes), this typically happens if using "lots" of memory.

The strict definition of "lots" is a bit hard, cause it depends on many factors.

Problem exists in 6.3.31 and 7.0.11 and 7.0.12
[15 Feb 2010 11:55] Bugs System
A patch for this bug has been committed. After review, it may
be pushed to the relevant source trees for release in the next
version. You can access the patch from:

  http://lists.mysql.com/commits/100351

3096 Jonas Oreland	2010-02-15
      ndb - bug#51027 (6.3.31a) - handle non-continious memory for IndexMemory and RedoBuffer
[15 Feb 2010 12:49] Bugs System
A patch for this bug has been committed. After review, it may
be pushed to the relevant source trees for release in the next
version. You can access the patch from:

  http://lists.mysql.com/commits/100376

3384 Jonas Oreland	2010-02-15 [merge]
      ndb - merge bug#51027 into 7.0.11
[15 Feb 2010 13:37] Bugs System
A patch for this bug has been committed. After review, it may
be pushed to the relevant source trees for release in the next
version. You can access the patch from:

  http://lists.mysql.com/commits/100381

3386 Jonas Oreland	2010-02-15 [merge]
      ndb - merge bug#51027 into 7.0.12
[15 Feb 2010 14:20] Bugs System
Pushed into 5.1.41-ndb-7.0.13 (revid:jonas@mysql.com-20100215135340-f74zahfeafxgnvkw) (version source revid:jonas@mysql.com-20100215134651-yf6p34q67r0mbvlo) (merge vers: 5.1.41-ndb-7.0.13) (pib:16)
[15 Feb 2010 21:51] Jonas Oreland
released as 6.3.31a, 7.0.11a and 7.0.12a
[16 Feb 2010 8:39] Jon Stephens
Documented bugfix in the NDB-6.3.31a, 7.0.11a, 7.0.12a, and 7.1.2 changelogs, as follows:

        An initial restart of a data node configured with a large amount 
        of memory could fail with a -Pointer too large- error.

Closed.
[19 Feb 2010 11:02] Bugs System
A patch for this bug has been committed. After review, it may
be pushed to the relevant source trees for release in the next
version. You can access the patch from:

  http://lists.mysql.com/commits/100844

3095 Martin Skold	2010-02-19 [merge]
      Merge
      modified:
        storage/ndb/include/util/Parser.hpp
        storage/ndb/src/kernel/blocks/dbacc/Dbacc.hpp
        storage/ndb/src/kernel/blocks/dbacc/DbaccInit.cpp
        storage/ndb/src/kernel/blocks/dbacc/DbaccMain.cpp
        storage/ndb/src/kernel/blocks/dblqh/Dblqh.hpp
        storage/ndb/src/kernel/blocks/dblqh/DblqhInit.cpp
        storage/ndb/src/kernel/vm/ndbd_malloc_impl.cpp
        storage/ndb/src/mgmsrv/MgmtSrvr.cpp
        storage/ndb/src/mgmsrv/MgmtSrvr.hpp
        storage/ndb/src/mgmsrv/Services.cpp
        storage/ndb/test/include/NdbRestarter.hpp
        storage/ndb/test/ndbapi/testMgm.cpp
        storage/ndb/test/ndbapi/testUpgrade.cpp
        storage/ndb/test/run-test/command.cpp
        storage/ndb/test/run-test/db.cpp
        storage/ndb/test/run-test/upgrade-tests.txt
        storage/ndb/test/src/CpcClient.cpp
        storage/ndb/test/src/NdbRestarter.cpp
[24 Feb 2010 14:31] Bugs System
A patch for this bug has been committed. After review, it may
be pushed to the relevant source trees for release in the next
version. You can access the patch from:

  http://lists.mysql.com/commits/101329

3407 Martin Skold	2010-02-24 [merge]
      Merge
      added:
        storage/ndb/cmake/
        storage/ndb/cmake/cmake_parse_arguments.cmake
        storage/ndb/cmake/libutils.cmake
      modified:
        .bzrignore
        mysql-test/suite/ndb/r/ndb_dd_alter.result
        mysql-test/suite/ndb/r/ndb_dd_restore_compat.result
        mysql-test/suite/ndb/t/show_attributes.inc
        storage/ndb/CMakeLists.txt
        storage/ndb/Makefile.am
        storage/ndb/config/type_ndbapitools.cmake
        storage/ndb/include/kernel/GlobalSignalNumbers.h
        storage/ndb/include/util/Parser.hpp
        storage/ndb/src/CMakeLists.txt
        storage/ndb/src/kernel/blocks/CMakeLists.txt
        storage/ndb/src/kernel/blocks/dbacc/Dbacc.hpp
        storage/ndb/src/kernel/blocks/dbacc/DbaccInit.cpp
        storage/ndb/src/kernel/blocks/dbacc/DbaccMain.cpp
        storage/ndb/src/kernel/blocks/dblqh/Dblqh.hpp
        storage/ndb/src/kernel/blocks/dblqh/DblqhInit.cpp
        storage/ndb/src/kernel/blocks/dblqh/DblqhMain.cpp
        storage/ndb/src/kernel/blocks/dbtup/Dbtup.hpp
        storage/ndb/src/kernel/blocks/dbtup/DbtupGen.cpp
        storage/ndb/src/kernel/blocks/dbtup/DbtupTrigger.cpp
        storage/ndb/src/kernel/blocks/suma/Suma.cpp
        storage/ndb/src/kernel/blocks/suma/Suma.hpp
        storage/ndb/src/kernel/blocks/suma/SumaInit.cpp
        storage/ndb/src/kernel/vm/ArrayPool.hpp
        storage/ndb/src/kernel/vm/ndbd_malloc_impl.cpp
        storage/ndb/src/mgmsrv/CMakeLists.txt
        storage/ndb/src/mgmsrv/MgmtSrvr.cpp
        storage/ndb/src/mgmsrv/MgmtSrvr.hpp
        storage/ndb/src/mgmsrv/Services.cpp
        storage/ndb/src/ndbapi/NdbDictionary.cpp
        storage/ndb/test/include/HugoTransactions.hpp
        storage/ndb/test/include/NdbRestarter.hpp
        storage/ndb/test/ndbapi/testMgm.cpp
        storage/ndb/test/ndbapi/testUpgrade.cpp
        storage/ndb/test/run-test/command.cpp
        storage/ndb/test/run-test/db.cpp
        storage/ndb/test/run-test/upgrade-tests.txt
        storage/ndb/test/src/CpcClient.cpp
        storage/ndb/test/src/HugoTransactions.cpp
        storage/ndb/test/src/NdbRestarter.cpp
        storage/ndb/tools/CMakeLists.txt
        storage/ndb/tools/desc.cpp

Portions of this website are copyright © 2001, 2002 The PHP Group

Page generated in 0.044 sec. using MySQL 8.4.7-u6-cloud

Timestamp references displayed by the system are UTC.
Content reproduced on this site is the property of the respective copyright holders.
It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.