hyperscan 정규식 최대 관련 설정
hyperscan 정규식 최대 관련 설정
hyperscan 다중-매치 함수에서 각 정규식의 길이와 모든 정규식의 총 길이를 제한하는 설정들이에요. 이 설정들은 system.settings 테이블에서 확인할 수 있고 소스 코드에서 자동 생성된 값들이에요.
출처: 문서
본문
이 설정들은 system.settings에서 확인할 수 있고, 소스 코드에서 자동 생성된 값들이에요.
max_hyperscan_regexp_length
hyperscan 다중-매치 함수에서 각 정규식의 최대 길이를 정의해요.
가능한 값:
- 양의 정수.
- 0 — 길이가 제한되지 않아요.
예시:
쿼리:
SELECT multiMatchAny('abcd', ['ab','bcd','c','d']) SETTINGS max_hyperscan_regexp_length = 3;
결과:
┌─multiMatchAny('abcd', ['ab', 'bcd', 'c', 'd'])─┐
│ 1 │
└────────────────────────────────────────────────┘
쿼리:
SELECT multiMatchAny('abcd', ['ab','bcd','c','d']) SETTINGS max_hyperscan_regexp_length = 2;
결과:
Exception: Regexp length too large.
함께 보기:
max_hyperscan_regexp_total_length
max_hyperscan_regexp_total_length
각 hyperscan 다중-매치 함수에서 모든 정규식의 최대 총 길이를 설정해요.
가능한 값:
- 양의 정수.
- 0 — 길이가 제한되지 않아요.
예시:
쿼리:
SELECT multiMatchAny('abcd', ['a','b','c','d']) SETTINGS max_hyperscan_regexp_total_length = 5;
결과:
┌─multiMatchAny('abcd', ['a', 'b', 'c', 'd'])─┐
│ 1 │
└─────────────────────────────────────────────┘
쿼리:
SELECT multiMatchAny('abcd', ['ab','bc','c','d']) SETTINGS max_hyperscan_regexp_total_length = 5;
결과:
Exception: Total regexp lengths too large.
함께 보기:
max_hyperscan_regexp_length