Parsed test spec with 3 sessions

starting permutation: s3_count_chunks_pre_compression s3_lock_compression s1_compress_first_half_of_chunks s2_compress_second_half_of_chunks s3_unlock_compression s3_count_chunks_post_compression
step s3_count_chunks_pre_compression: 
    select count(*), 48 as expected from show_chunks('sensor_data');

count|expected
-----+--------
   48|      48

step s3_lock_compression: 
    SELECT debug_waitpoint_enable('compress_chunk_impl_start');

debug_waitpoint_enable
----------------------
                      

step s1_compress_first_half_of_chunks: 
   call compress_chunks_in_individual_transactions(
     $$
       select show_chunks('sensor_data') limit 24
     $$
   ); 
 <waiting ...>
step s2_compress_second_half_of_chunks: 
   call compress_chunks_in_individual_transactions($$select show_chunks('sensor_data') i  offset 24$$); 
 <waiting ...>
step s3_unlock_compression: 
    SELECT debug_waitpoint_release('compress_chunk_impl_start');
 <waiting ...>
step s1_compress_first_half_of_chunks: <... completed>
step s2_compress_second_half_of_chunks: <... completed>
step s3_unlock_compression: <... completed>
debug_waitpoint_release
-----------------------
                       

step s3_count_chunks_post_compression: 
    select count(*), 24 as expected from show_chunks('sensor_data');

count|expected
-----+--------
   24|      24


starting permutation: s3_count_chunks_pre_compression s3_lock_compression s1_compress_first_two_by_two s2_compress_second_two_by_two s3_unlock_compression s3_count_chunks_post_compression
step s3_count_chunks_pre_compression: 
    select count(*), 48 as expected from show_chunks('sensor_data');

count|expected
-----+--------
   48|      48

step s3_lock_compression: 
    SELECT debug_waitpoint_enable('compress_chunk_impl_start');

debug_waitpoint_enable
----------------------
                      

step s1_compress_first_two_by_two: 
   call compress_chunks_in_individual_transactions(
     $$
       select i.show_chunks 
       from (
         select row_number() over () as row_number, i as show_chunks 
         from show_chunks('sensor_data') i
       ) i where i.row_number%4 in (1,2) 
     $$); 
 <waiting ...>
step s2_compress_second_two_by_two: 
   call compress_chunks_in_individual_transactions(
     $$
       select i.show_chunks 
       from (
         select row_number() over () as row_number, i as show_chunks 
         from show_chunks('sensor_data') i
       ) i where i.row_number%4 in (3,0) 
     $$); 
 <waiting ...>
step s3_unlock_compression: 
    SELECT debug_waitpoint_release('compress_chunk_impl_start');
 <waiting ...>
step s1_compress_first_two_by_two: <... completed>
step s2_compress_second_two_by_two: <... completed>
step s3_unlock_compression: <... completed>
debug_waitpoint_release
-----------------------
                       

step s3_count_chunks_post_compression: 
    select count(*), 24 as expected from show_chunks('sensor_data');

count|expected
-----+--------
   24|      24


starting permutation: s1_compress_single_chunk s1_compress_all_chunks_single_transaction s3_select_on_compressed_chunk s3_wait_for_finish s1_compress_finish
step s1_compress_single_chunk: 
    select compress_chunk(c, true) from show_chunks('sensor_data') c limit 1;

compress_chunk                            
------------------------------------------
_timescaledb_internal._hyper_X_X_chunk

step s1_compress_all_chunks_single_transaction: 
    BEGIN;
    select count(compress_chunk(c, true)) from show_chunks('sensor_data') c;

s1: NOTICE:  chunk "_hyper_X_X_chunk" is already converted to columnstore
count
-----
   48

step s3_select_on_compressed_chunk: 
    DO $$
    DECLARE
      hyper_id int;
      chunk_id int;
    BEGIN
      SELECT h.compressed_hypertable_id, c.compressed_chunk_id 
      INTO hyper_id, chunk_id
      FROM _timescaledb_catalog.hypertable h 
      INNER JOIN _timescaledb_catalog.chunk c  
      ON h.id = c.hypertable_id 
      WHERE h.table_name = 'sensor_data' 
      AND c.compressed_chunk_id IS NOT NULL;
      EXECUTE format('SELECT * 
        FROM _timescaledb_internal.compress_hyper_%s_%s_chunk 
        WHERE sensor_id = 40 
        AND temperature IS NOT NULL;', 
        hyper_id, 
        chunk_id);
    END;
    $$;

step s3_wait_for_finish: 

step s1_compress_finish: 
    COMMIT;

