Unable to initialize memory at the control block index. Restart the computer.

Unable_to_initialize_memory_at_the_control_block_index__Restart_the_computer (Rule)

Knowledge Base article:

Summary

The message transfer agent (MTA) has failed to allocate and reserve memory from the operating system.

Resolutions

Use System Monitor to determine if a particular item is taking up too much memory. To allocate more memory, close any applications that are not essential. You can also increase your system's physical or virtual memory. Verify that there is enough disk space for the paging file to grow.

This could also be corruption on the Mtadata directory. If there are other events that lead you to this conclusion, use the Chkdsk and Mtacheck tools.

Use the Mtawipe tool on the Mtadata directory:

Make a backup copy of the Db*.dat files in the Exchsrvr\Mtadata folder on your hard disk.

Note: Do not skip this step. If the MTA does not start after you reset the MTA database files, restore the backup copies of the Db*.dat files to work around the problem.

Copy all the files in the Setup\I386\Bootenv folder on the Microsoft Exchange Server CD-ROM to the Exchsrvr\Mtadata folder on your hard disk.

Note: There should be 40 files that are copied to this directory.

Select Yes to overwrite the existing files.

Remove the read-only attribute from the files that you copied from the CD-ROM to your hard disk. No files in the Exchsrvr\Mtadata folder on your hard disk should have the read-only attribute set.

Open a command prompt, and then run the mtacheck /v command in the Exchsrvr\bin folder on your hard disk.

Use the Services tool to restart the MTA service.

Troubleshoot network connectivity.

External

For more information about MSExchangeMTA event 9278, see:

Element properties:

TargetMicrosoft.Exchange.Routing.MTA
CategoryEventCollection
EnabledTrue
Event_ID9278
Event SourceMSExchangeMTA
Alert GenerateTrue
Alert SeverityWarning
Alert PriorityNormal
RemotableTrue
Alert Message
Unable to initialize memory at the control block index. Restart the computer.
{0}
Event LogApplication

Member Modules:

ID Module Type TypeId RunAs 
EventDS DataSource Microsoft.Windows.EventProvider Default
GenerateAlert WriteAction System.Health.GenerateAlert Default

Source Code:

<Rule ID="Unable_to_initialize_memory_at_the_control_block_index__Restart_the_computer" Enabled="onEssentialMonitoring" Target="Exch2003Core!Microsoft.Exchange.Routing.MTA" ConfirmDelivery="false" Remotable="true" Priority="Normal" DiscardLevel="100">
<Category>EventCollection</Category>
<DataSources>
<DataSource ID="EventDS" TypeID="Windows!Microsoft.Windows.EventProvider">
<ComputerName>$Target/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<LogName>Application</LogName>
<Expression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>Channel</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>Application</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>MSExchangeMTA</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>9278</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</Expression>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="GenerateAlert" TypeID="SystemHealth!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>1</Severity>
<AlertOwner>$Data/PublisherName$</AlertOwner>
<AlertMessageId>$MPElement[Name="Unable_to_initialize_memory_at_the_control_block_index__Restart_the_computer.AlertMessage"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Data/EventDescription$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue/>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>