Skip to content

Commit c8b6de6

Browse files
committed
Fixes to tests
1 parent a2fb4e1 commit c8b6de6

6 files changed

+53
-28
lines changed

test/src/unit-cppapi-consolidation-with-timestamps.cc

+1-1
Original file line numberDiff line numberDiff line change
@@ -685,7 +685,7 @@ TEST_CASE_METHOD(
685685

686686
// Will only allow to load two tiles out of 3.
687687
Config cfg;
688-
cfg.set("sm.mem.total_budget", "60000");
688+
cfg.set("sm.mem.total_budget", "50000");
689689
cfg.set("sm.mem.reader.sparse_global_order.ratio_coords", "0.15");
690690
ctx_ = Context(cfg);
691691

test/src/unit-sparse-global-order-reader.cc

+4-4
Original file line numberDiff line numberDiff line change
@@ -564,7 +564,7 @@ TEST_CASE_METHOD(
564564

565565
// Specific relationship for failure not known, but these values
566566
// will result in failure with data being written.
567-
total_budget_ = "30000";
567+
total_budget_ = "10000";
568568
// Failure here occurs with the value of 0.1 for ratio_tile_ranges_.
569569
update_config();
570570

@@ -653,7 +653,7 @@ TEST_CASE_METHOD(
653653

654654
// specific relationship for failure not known, but these values
655655
// will result in failure with data being written.
656-
total_budget_ = "40000";
656+
total_budget_ = "15000";
657657
// Failure here occurs with the value of 0.1 for ratio_tile_ranges_.
658658
update_config();
659659

@@ -791,7 +791,7 @@ TEST_CASE_METHOD(
791791

792792
// Two result tiles (2 * (~4500 + 8) will be bigger than the per fragment
793793
// budget (3905).
794-
total_budget_ = "82000";
794+
total_budget_ = "60000";
795795
ratio_coords_ = "0.11";
796796
update_config();
797797

@@ -1314,7 +1314,7 @@ TEST_CASE_METHOD(
13141314

13151315
// Two result tile (2 * (~4500 + 8) will be bigger than the per fragment
13161316
// budget (1000).
1317-
total_budget_ = "45000";
1317+
total_budget_ = "40000";
13181318
ratio_coords_ = "0.22";
13191319
update_config();
13201320

tiledb/sm/filter/test/filter_test_support.cc

+6-3
Original file line numberDiff line numberDiff line change
@@ -159,7 +159,8 @@ shared_ptr<WriterTile> make_increasing_tile(
159159
Datatype::UINT64,
160160
cell_size,
161161
tile_size,
162-
tracker);
162+
tracker,
163+
true);
163164
for (uint64_t i = 0; i < nelts; i++) {
164165
CHECK_NOTHROW(tile->write(&i, i * sizeof(uint64_t), sizeof(uint64_t)));
165166
}
@@ -178,7 +179,8 @@ shared_ptr<WriterTile> make_offsets_tile(
178179
Datatype::UINT64,
179180
constants::cell_var_offset_size,
180181
offsets_tile_size,
181-
tracker);
182+
tracker,
183+
true);
182184

183185
// Set up test data
184186
for (uint64_t i = 0; i < offsets.size(); i++) {
@@ -204,7 +206,8 @@ Tile create_tile_for_unfiltering(
204206
tile->filtered_buffer().data(),
205207
tile->filtered_buffer().size(),
206208
tracker,
207-
ThreadPool::SharedTask()};
209+
ThreadPool::SharedTask(),
210+
true};
208211
}
209212

210213
void run_reverse(

tiledb/sm/filter/test/tile_data_generator.h

+6-3
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,8 @@ class TileDataGenerator {
6868
datatype(),
6969
cell_size(),
7070
original_tile_size(),
71-
memory_tracker);
71+
memory_tracker,
72+
true);
7273
}
7374

7475
/**
@@ -100,7 +101,8 @@ class TileDataGenerator {
100101
filtered_buffer.data(),
101102
filtered_buffer.size(),
102103
memory_tracker,
103-
ThreadPool::SharedTask());
104+
ThreadPool::SharedTask(),
105+
true);
104106
}
105107

106108
/** Returns the size of the original unfiltered data. */
@@ -188,7 +190,8 @@ class IncrementTileDataGenerator : public TileDataGenerator {
188190
Datatype::UINT64,
189191
constants::cell_var_offset_size,
190192
offsets.size() * constants::cell_var_offset_size,
191-
memory_tracker);
193+
memory_tracker,
194+
true);
192195
for (uint64_t index = 0; index < offsets.size(); ++index) {
193196
CHECK_NOTHROW(offsets_tile->write(
194197
&offsets[index],

tiledb/sm/tile/tile.cc

+25-9
Original file line numberDiff line numberDiff line change
@@ -109,13 +109,15 @@ TileBase::TileBase(
109109
const Datatype type,
110110
const uint64_t cell_size,
111111
const uint64_t size,
112-
tdb::pmr::memory_resource* resource)
112+
tdb::pmr::memory_resource* resource,
113+
const bool skip_waiting_on_io_task)
113114
: resource_(resource)
114115
, data_(tdb::pmr::make_unique<std::byte>(resource_, size))
115116
, size_(size)
116117
, cell_size_(cell_size)
117118
, format_version_(format_version)
118-
, type_(type) {
119+
, type_(type)
120+
, skip_waiting_on_io_task_(skip_waiting_on_io_task) {
119121
/*
120122
* We can check for a bad allocation after initialization without risk
121123
* because none of the other member variables use its value for their own
@@ -161,26 +163,33 @@ Tile::Tile(
161163
tdb::pmr::memory_resource* resource,
162164
ThreadPool::SharedTask filtered_data_io_task,
163165
const bool skip_waiting_on_io_task)
164-
: TileBase(format_version, type, cell_size, size, resource)
166+
: TileBase(
167+
format_version,
168+
type,
169+
cell_size,
170+
size,
171+
resource,
172+
skip_waiting_on_io_task)
165173
, zipped_coords_dim_num_(zipped_coords_dim_num)
166174
, filtered_data_(filtered_data)
167175
, filtered_size_(filtered_size)
168-
, filtered_data_io_task_(std::move(filtered_data_io_task))
169-
, skip_waiting_on_io_task_(skip_waiting_on_io_task) {
176+
, filtered_data_io_task_(std::move(filtered_data_io_task)) {
170177
}
171178

172179
WriterTile::WriterTile(
173180
const format_version_t format_version,
174181
const Datatype type,
175182
const uint64_t cell_size,
176183
const uint64_t size,
177-
shared_ptr<MemoryTracker> memory_tracker)
184+
shared_ptr<MemoryTracker> memory_tracker,
185+
const bool skip_waiting_on_io_task)
178186
: TileBase(
179187
format_version,
180188
type,
181189
cell_size,
182190
size,
183-
memory_tracker->get_resource(MemoryType::WRITER_TILE_DATA))
191+
memory_tracker->get_resource(MemoryType::WRITER_TILE_DATA),
192+
skip_waiting_on_io_task)
184193
, filtered_buffer_(0) {
185194
}
186195

@@ -189,8 +198,15 @@ WriterTile::WriterTile(
189198
const Datatype type,
190199
const uint64_t cell_size,
191200
const uint64_t size,
192-
tdb::pmr::memory_resource* resource)
193-
: TileBase(format_version, type, cell_size, size, resource)
201+
tdb::pmr::memory_resource* resource,
202+
const bool skip_waiting_on_io_task)
203+
: TileBase(
204+
format_version,
205+
type,
206+
cell_size,
207+
size,
208+
resource,
209+
skip_waiting_on_io_task)
194210
, filtered_buffer_(0) {
195211
}
196212

tiledb/sm/tile/tile.h

+11-8
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,8 @@ class TileBase {
6868
const Datatype type,
6969
const uint64_t cell_size,
7070
const uint64_t size,
71-
tdb::pmr::memory_resource* resource);
71+
tdb::pmr::memory_resource* resource,
72+
const bool skip_waiting_on_io_task);
7273

7374
DISABLE_COPY_AND_COPY_ASSIGN(TileBase);
7475
DISABLE_MOVE_AND_MOVE_ASSIGN(TileBase);
@@ -181,6 +182,11 @@ class TileBase {
181182

182183
/** The tile data type. */
183184
Datatype type_;
185+
186+
/**
187+
* Whether to block waiting for io data to be ready before accessing data()
188+
*/
189+
const bool skip_waiting_on_io_task_;
184190
};
185191

186192
/**
@@ -428,11 +434,6 @@ class Tile : public TileBase {
428434
* need a mutex since the tile will be accessed by multiple threads.
429435
*/
430436
mutable std::recursive_mutex filtered_data_io_task_mtx_;
431-
432-
/**
433-
* Whether to block waiting for io data to be ready before accessing data()
434-
*/
435-
const bool skip_waiting_on_io_task_;
436437
};
437438

438439
/**
@@ -483,7 +484,8 @@ class WriterTile : public TileBase {
483484
const Datatype type,
484485
const uint64_t cell_size,
485486
const uint64_t size,
486-
shared_ptr<MemoryTracker> memory_tracker);
487+
shared_ptr<MemoryTracker> memory_tracker,
488+
const bool skip_waiting_on_io_task = false);
487489

488490
/**
489491
* Constructor.
@@ -499,7 +501,8 @@ class WriterTile : public TileBase {
499501
const Datatype type,
500502
const uint64_t cell_size,
501503
const uint64_t size,
502-
tdb::pmr::memory_resource* resource);
504+
tdb::pmr::memory_resource* resource,
505+
const bool skip_waiting_on_io_task = false);
503506

504507
DISABLE_COPY_AND_COPY_ASSIGN(WriterTile);
505508
DISABLE_MOVE_AND_MOVE_ASSIGN(WriterTile);

0 commit comments

Comments
 (0)