High Open Handles for Mysqld on Windows, "InnoDB: Could not create a Windows event semaphore; Windows error 1450", "InnoDB: Failing assertion: SetEvent(event->handle)" (Doc ID 1333906.1)

Last updated on MARCH 08, 2017

Applies to:

MySQL Server - Version: 5.1 to 5.1 - Release: 5.1 to 5.1
MySQL Server - Version: 5.1 to 5.1   [Release: 5.1 to 5.1]
Microsoft Windows (32-bit)
Microsoft Windows x64 (64-bit)
Microsoft Windows x64 (64-bit) - OS Version: 7
Microsoft Windows (32-bit) - OS Version: 7
Microsoft Windows x64 (64-bit) - Version: 2008 R2

Symptoms

You may receive an error message like "InnoDB: Could not create a Windows event semaphore; Windows error 1450" when starting the server after an upgrade or after increasing the size of the InnoDB buffer pool. Or you may receive this pair of errors in the MySQL error log file:


InnoDB: Assertion failure in thread 1234 in file .\os\os0sync.c line 234
InnoDB: Failing assertion: SetEvent(event->handle)


The line number may vary and the thread number will be different. These errors are most likely to be encountered when attempts to allocate more than about 63 gigabytes to the buffer pool are made.

Pslist produces output like this:


Name                             Pid Pri Thd  Hnd      VM      WS    Priv
        mysqld                2148   8  65 159712  920424  124914  844620

The Hnd (handles) value is much higher with the InnoDB plugin in MySQL 5.1.46 than in previous versions of the plugin or the non-plugin version of InnoDB.

Handles produces output like this with a four gigabyte buffer pool:


C:\mysql\bin>C:\Downloads\Handle\handle -p mysqld.exe -s

Handle v3.42

Copyright (C) 1997-2008 Mark Russinovich
Sysinternals - www.sysinternals.com


Handle type summary:
  ALPC Port       : 4
  Desktop         : 1
  Directory       : 2
  EtwRegistration : 25
  Event           : 1204377  <------
  File            : 28
  IoCompletion    : 2
  Key             : 6
  KeyedEvent      : 1
  Mutant          : 25
  Thread          : 22
  Timer           : 3
  TpWorkerFactory : 4
  WindowStation   : 2


Total handles: 1204502


The event handles are used for page locking in the buffer pool.

Changes

In MySQL 5.1 upgrading plugin InnoDB to a version from 5.1.46 onwards may cause this because of a change in how handles are used. The change was made to eliminate a negative performance effect.

Cause

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms