Home Dashboard Directory Help
Search

The model of the processor on the system does not support creating filegroups with MEMORY_OPTIMIZED_DATA. This error typically occurs with older processors. by LewisYang


Status: 

Active


3
0
Sign in
to vote
Type: Bug
ID: 792635
Opened: 7/5/2013 12:50:59 AM
Access Restriction: Public
1
Workaround(s)
view
0
User(s) can reproduce this bug

Description

Dear All,
     Once I completed deploy SQL Server 2014 CTP1 on the following environment.
     0. VM         : Oracle VirrtualBox 4.2.14
     1.Host OS : Windows 7(Lenovo X201 Inetl(R) Core(TM) i5 M560)
                         Mac OS(Macbook Pro Intel(R) Core(TM) i7 3520M)
     2.Guest OS : Windows 2008 Server R2 X64 / Windows Server 2012
    
I have used Oracle Virtualbox to deploy lots of Windows Server with SQL Server 2012/2014 for stage usage. It could work perfectly with Microsoft product. But this time, It's the first time for me to encounter strange error message while I tried to create in-memory database.

USE [master]
GO
CREATE DATABASE [Northwind_in_memory] CONTAINMENT = NONE
ON PRIMARY ( NAME = N'Northwind', FILENAME = N'c:\SQLdata\Nnorthwind.mdf' , SIZE = 4160KB
, MAXSIZE = UNLIMITED, FILEGROWTH = 1024KB ), FILEGROUP [hkNorthwind_mod]
CONTAINS MEMORY_OPTIMIZED_DATA DEFAULT ( NAME = N'Northwind_mod_dir', FILENAME = N'c:\SQLdata\Northwind_mod' ,
MAXSIZE = UNLIMITED) LOG ON ( NAME = N'Northwind_log', FILENAME = N'c:\SQLdata\Northwind_log.ldf' ,
SIZE = 4288KB , MAXSIZE = 2048GB , FILEGROWTH = 10%)
GO
    
Here is the error message.

Msg 41342, Level 15, State 1, Line 7
The model of the processor on the system does not support creating filegroups with MEMORY_OPTIMIZED_DATA. This error typically occurs with older processors. See SQL Server Books Online for information on supported models.

Regarding the information from the DMV of SQL Server 2014 and OS device manager,
The VM guest could successfully recognise those assigned CPU.

Is there any clue that I could find in order to solve this error message.

Details
Sign in to post a comment.
Posted by LewisYang on 7/15/2013 at 10:22 AM
Appreciate Jos de Bruijn to have prompt reply.
After I verified , your suggestion really works for Windows 2008R2 to deploy SQL Server 2014 CTP1 on Oracle VirtualBox 4.2.16. On the contrary, I also found this issue could auto solved by Windows 2012 X64 to deploy SQL Server 2014 CTP1 on Oracle VirtualBox 4.2.16. Thank you a lot.
Posted by Microsoft on 7/8/2013 at 12:06 PM
Hi,

Your processor needs to support the instruction cmpxchg16b.
This is required to use the in-memory OLTP feature.

All modern 64-bit processors support the instruction, so the issue must be in your VM host application. You can check whether the application has a configuration option to allow this instruction. If not, you could switch to Hyper-V, which supports this instruction without needing to tweak any config options.


Thanks,
Jos de Bruijn - Program Manager - SQL Server Database Systems
Sign in to post a workaround.
Posted by Paul Wehland on 7/10/2013 at 5:08 PM
Steps:
1) Start VirtualBox GUI as an Administrator
2) Start a command prompt as an Administrator
3) From the command prompt in step to, navigate to the directory where Oracle VirtualBox is installed
4) execute: VBoxManage setextradata [vmname] VBoxInternal/CPUM/CMPXCHG16B 1
                                             (Where [vmname] is the VirtualMachine running SQL 2014)