Uploaded image for project: 'MariaDB Server'
  1. MariaDB Server
  2. MDEV-14869

Server 10.2.11 Crash when running an stored procedured recurring event, that uses an ODBC table via CONNECT Table engine

    Details

      Description

      Hi when running an stored procedure via a recurring event, after some time the vent is executed, the server crashes.

      The stored procedure read data from an external DMISAM (elevatesoft.com) database via ODBC connector and CONNECT engine, and then updates that data in mysql tables.

      The server not always crashes in the same sql sentence, but always throws the same kinf of error:

      I have attached the error LOG and the sql for the stored procedures I Use.

      If you need more sample data (DBISAM) to test please let me know

      180103 18:03:43 [ERROR] mysqld got exception 0xc0000005 ;
       
      We will try our best to scrape up some info that will hopefully help
      diagnose the problem, but since we have already crashed, 
      something is definitely wrong and this may fail.
       
      Server version: 10.2.11-MariaDB
      key_buffer_size=134217728
      read_buffer_size=131072
      max_used_connections=2
      max_threads=2001
      thread_count=9
      It is possible that mysqld could use up to 
      key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = 293753 K  bytes of memory
      Hope that's ok; if not, decrease some variables in the equation.
       
      Thread pointer: 0x857ebb2f88
      Attempting backtrace. You can use the following information to find out
      where mysqld died. If you see no messages after this, something went
      terribly wrong...
      dbodbc.dll!SQLAllocHandle()
      ODBC32.dll!VFreeErrors()
      ODBC32.dll!SQLSetConnectAttrW()
      ODBC32.dll!SQLSetEnvAttr()
      ODBC32.dll!SQLDriverConnect()
      ha_connect.dll!?GetTable@ODBCDEF@@UEAAPEAVTDB@@PEAU_global@@W4MODE@@@Z()
      ha_connect.dll!?GetTable@ODBCDEF@@UEAAPEAVTDB@@PEAU_global@@W4MODE@@@Z()
      ha_connect.dll!?GetTable@ODBCDEF@@UEAAPEAVTDB@@PEAU_global@@W4MODE@@@Z()
      ha_connect.dll!GetTraceValue()
      ha_connect.dll!?MaxRange@XXROW@@UEAAHXZ()
      ha_connect.dll!?MaxVal@?$TYPVAL@G@@KA_KXZ()
      mysqld.exe!handler::ha_rnd_init_with_error()[handler.cc:2784]
      mysqld.exe!init_read_record()[records.cc:299]
      mysqld.exe!join_init_read_record()[sql_select.cc:19557]
      mysqld.exe!sub_select()[sql_select.cc:18635]
      mysqld.exe!do_select()[sql_select.cc:18182]
      mysqld.exe!JOIN::exec_inner()[sql_select.cc:3516]
      mysqld.exe!JOIN::exec()[sql_select.cc:3310]
      mysqld.exe!mysql_select()[sql_select.cc:3711]
      mysqld.exe!handle_select()[sql_select.cc:361]
      mysqld.exe!mysql_execute_command()[sql_parse.cc:3932]
      mysqld.exe!sp_instr_stmt::exec_core()[sp_head.cc:3266]
      mysqld.exe!sp_lex_keeper::reset_lex_and_exec_core()[sp_head.cc:3027]
      mysqld.exe!sp_instr_stmt::execute()[sp_head.cc:3180]
      mysqld.exe!sp_head::execute()[sp_head.cc:1336]
      mysqld.exe!sp_head::execute_procedure()[sp_head.cc:2135]
      mysqld.exe!do_execute_sp()[sql_parse.cc:2887]
      mysqld.exe!mysql_execute_command()[sql_parse.cc:5797]
      mysqld.exe!sp_instr_stmt::exec_core()[sp_head.cc:3266]
      mysqld.exe!sp_lex_keeper::reset_lex_and_exec_core()[sp_head.cc:3027]
      mysqld.exe!sp_instr_stmt::execute()[sp_head.cc:3180]
      mysqld.exe!sp_head::execute()[sp_head.cc:1336]
      mysqld.exe!sp_head::execute_procedure()[sp_head.cc:2135]
      mysqld.exe!Event_job_data::execute()[event_data_objects.cc:1433]
      mysqld.exe!Event_worker_thread::run()[event_scheduler.cc:313]
      mysqld.exe!event_worker_thread()[event_scheduler.cc:268]
      mysqld.exe!pthread_start()[my_winthread.c:62]
      mysqld.exe!thread_start<unsigned int (__cdecl*)(void * __ptr64)>()[thread.cpp:115]
      KERNEL32.DLL!BaseThreadInitThunk()
      ntdll.dll!RtlUserThreadStart()
       
      Trying to get some variables.
      Some pointers may be invalid and cause the dump to abort.
      Query (0x857eadc3a0): CREATE TEMPORARY TABLE __cuponesLOG__ ENGINE=MEMORY
       
       SELECT (@__idx := @__idx+1) AS ID, LOGTablaID, tipoLogID, condicionSQL FROM 
       
        DatosCupones_LogTabla WHERE (procesado=0) AND tabla='Cupones' LIMIT 10
      Connection ID (thread ID): 106
      Status: NOT_KILLED
       
      Optimizer switch: index_merge=on,index_merge_union=on,index_merge_sort_union=on,index_merge_intersection=on,index_merge_sort_intersection=off,engine_condition_pushdown=off,index_condition_pushdown=on,derived_merge=on,derived_with_keys=on,firstmatch=on,loosescan=on,materialization=on,in_to_exists=on,semijoin=on,partial_match_rowid_merge=on,partial_match_table_scan=on,subquery_cache=on,mrr=off,mrr_cost_based=off,mrr_sort_keys=off,outer_join_with_cache=on,semijoin_with_cache=on,join_cache_incremental=on,join_cache_hashed=on,join_cache_bka=on,optimize_join_buffer_size=off,table_elimination=on,extended_keys=on,exists_to_in=on,orderby_uses_equalities=on,condition_pushdown_for_derived=on
       
      The manual page at http://dev.mysql.com/doc/mysql/en/crashing.html contains
      information that should help you find out what is causing the crash.
      

        Attachments

        1. evERPActualizaDatosRemotos_Event.sql
          0.3 kB
          Francisco Dueñas
        2. ServerWEB.err
          28 kB
          Francisco Dueñas
        3. spERPActualizarCupones_Procedure.sql
          12 kB
          Francisco Dueñas
        4. spSysExecuteSQL_procedure.sql
          0.4 kB
          Francisco Dueñas
        5. sqlTable_structs.sql
          15 kB
          Francisco Dueñas

          Activity

            People

            • Assignee:
              bertrandop Olivier Bertrand
              Reporter:
              fduenas Francisco Dueñas
            • Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated: