In-Memory OLTP 사용시 메모리 할당량 초과 오류

 

·         Version : SQL Server 2014, 2016

 

SQL Server 에서 In-Memory OLTP 사용하는 환경에서 아래와 같은 오류가 에러로그에 기록되어 있다면 현재 적용되어 있는 In-Memory 용량을 초과한 것이다.

[INFO] HkDatabaseTryAcquireUserMemory(): Database ID: [7]. Out of user memory quota: requested = 131200; available = 74641; quota = 34359738368; operation = 1.

 

오류 로그에 기록된 내용은 아래와 같다.

·         requested = 131200 : 요청된 바이트 

·         available = 74641 : 사용할  있는 바이트 

·         quota = 34359738368 : 현재 할당된 바이트  (Standard Edition : 32G)

·         operation = 1 : 메모리 최적화 테이블 변수를 생성할  있도록 메모리가 요청 

Ø  operation 0 : create memory optimized table

Ø  operation  1 : create memory optimized table variable

Ø  operation  2 : insert

Ø  operation  3 : update

 

위의 메시지 외에도 사용자 어플리케이션에서는 아래와 같은 메시지를 수신하는 경우도 있다.

Msg 41823, Level 16, State 171, Line 6 Could not perform the operation because the database has reached its quota for in-memory tables. See 'http://go.microsoft.com/fwlink/?LinkID=623028' for more information.

 

메모리 최적화 테이블 변수 사용시 루프를 사용할때 위와 같은 메모리 부족 오류가 자주 발생 할 수 있으니 주의 할 수 있도록 한다.

·         메모리 최적화 테이블변수와 701 오류 (loop 사용으로 인한 메모리 부족 오류) : http://sqlmvp.kr/220996905075

 

SQL Server 2016 In-Memory OLTP quotas.

Edition

In-Memory OLTP quota(per DB)

Express

352MB

Web

16GB

Standard

32GB

Developer

Unlimited

Enterprise

Unlimited

 

 

[참고자료]

·         https://blogs.msdn.microsoft.com/psssql/2017/06/07/you-may-see-out-of-user-memory-quota-message-in-errorlog-when-you-use-in-memory-oltp-feature/

·         https://blogs.msdn.microsoft.com/sqlserverstorageengine/2016/11/17/in-memory-oltp-in-standard-and-express-editions-with-sql-server-2016-sp1/

 

 

2017-08-23 / 강성욱 / http://sqlmvp.kr

 

SQL Server 2016, In memory OLTP, SQL Server, DBA, Memory optimize table, In Memory quota




강성욱 / jevida@naver.com
Microsoft SQL Server MVP
Blog : http://sqlmvp.kr
Facebook : http://facebook.com/sqlmvp
No. Subject Author Date Views
Notice [IT재직자] 개강임박!! 올해 마지막 무료 및 국비지원 교육 (JAVA, 리눅스 기초/고급 , CCNA, CCIE 등) 코난(김대우) 2022.12.02 86
Notice 2022년 11월 SQLER의 강좌 업데이트 리스트 코난(김대우) 2022.12.01 23
Notice 2022 공개SW 페스티벌 - Open Up 코난(김대우) 2022.12.01 15
2123 Run the SQL Server 2017 with Docker jevida(강성욱) 2019.03.25 463
2122 SQL Server Configuration Manager 실행 오류 (WMI 공급자 연결 오류) jevida(강성욱) 2019.03.25 518
2121 BULK INSERT 동시에 여러개 실행 향지 2019.01.30 957
2120 대용량 데이터 조인에 대한 고민 ( Hash Join VS Nested Loop Join ) 향지 2018.04.04 4391
2119 How to check if Azure SQL is using In-Memory jevida(강성욱) 2018.03.31 3260
2118 MSSQL-CLI를 활용한 크로스플랫폼에서 SQL Server 관리하기 jevida(강성욱) 2018.03.31 3589
2117 SSMS – Search for execution plan jevida(강성욱) 2018.03.31 3760
2116 SQL Server Parallelism and Wait change (CXAPCKET, CXCONSUMER) jevida(강성욱) 2018.03.31 4020
2115 SQL Server Statistics Update row sampling rate and histogram step jevida(강성욱) 2018.03.31 3678
2114 SSMS – AlwaysOn Group Latency report jevida(강성욱) 2018.03.31 3411
2113 SQL Server 백업 압축의 압축률 확인 jevida(강성욱) 2018.03.31 4168
2112 SQL Server 교착 상태 모니터링 (-T1222) jevida(강성욱) 2018.03.31 4231
2111 SQL Operations Studio - Linux, MAC에서 사용할 수 있는 SQL DBMS 툴 jevida(강성욱) 2018.03.31 3097
2110 SQL Server 2016 Large RAM 및 Checkpoint jevida(강성욱) 2018.03.31 2228
2109 SQL Server 2016 JSON 형식을 일반 ROW 형식으로 반환하 jevida(강성욱) 2018.03.31 1733
2108 model Database 손상시 발생하는 영향 및 복구 방법 jevida(강성욱) 2018.03.31 1209
» In-Memory OLTP 사용시 메모리 할당량 초과 오류 jevida(강성욱) 2017.09.13 6799
2106 SQL Server 2016 쿼리 실행에 대한 각 스레드(오퍼레이터) 성능 통계 jevida(강성욱) 2017.09.13 7098
2105 Multisubnet환경의 AG 그룹에서 링크드 서버 사용시 주의점 jevida(강성욱) 2017.09.13 5958
2104 SQL Linux에서 Job Agent 설치 jevida(강성욱) 2017.09.13 5996





XE Login

테스트 팝업
Close