File: in_memory_compress.test

package info (click to toggle)
duckdb 1.5.1-3
  • links: PTS, VCS
  • area: main
  • in suites:
  • size: 299,196 kB
  • sloc: cpp: 865,414; ansic: 57,292; python: 18,871; sql: 12,663; lisp: 11,751; yacc: 7,412; lex: 1,682; sh: 747; makefile: 564
file content (29 lines) | stat: -rw-r--r-- 828 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# name: test/sql/storage/memory/in_memory_compress.test
# description: Test in-memory compression
# group: [memory]

statement ok
PRAGMA enable_verification

statement ok
ATTACH ':memory:' AS memory_compressed (COMPRESS)

statement ok
CREATE TABLE memory_compressed.a(i INTEGER)

statement ok
INSERT INTO memory_compressed.a FROM range(10000000)

statement ok
PRAGMA force_checkpoint

statement ok
FORCE CHECKPOINT memory_compressed

# uncompressed this would take 10M * 4 bytes = ~40MB
# this compresses very well, so we should be able to store it in far less space
# assert this takes less than 1 MB
query I
SELECT case when memory_usage_bytes < 1000000 then 'success' else error(concat('Expected less than ', 1000000, ' bytes, but got ', memory_usage_bytes)) end FROM duckdb_memory() WHERE tag='IN_MEMORY_TABLE'
----
success