(final TSDB tsdb,
final TsdbQuery query,
final byte[] metric,
final List<ByteMap<byte[][]>> tags,
final long start_row_time,
final long end_row_time,
final byte[] table_to_fetch,
final TreeMap<byte[], Span> spans,
final TreeMap<byte[], HistogramSpan> histogramSpans,
final long timeout,
final RollupQuery rollup_query,
final QueryStats query_stats,
final int query_index,
final long max_bytes,
final boolean override_count_limit,
final boolean multiget_no_meta)
| 143 | private final int rollup_count_id; |
| 144 | |
| 145 | public MultiGetQuery(final TSDB tsdb, |
| 146 | final TsdbQuery query, |
| 147 | final byte[] metric, |
| 148 | final List<ByteMap<byte[][]>> tags, |
| 149 | final long start_row_time, |
| 150 | final long end_row_time, |
| 151 | final byte[] table_to_fetch, |
| 152 | final TreeMap<byte[], Span> spans, |
| 153 | final TreeMap<byte[], HistogramSpan> histogramSpans, |
| 154 | final long timeout, |
| 155 | final RollupQuery rollup_query, |
| 156 | final QueryStats query_stats, |
| 157 | final int query_index, |
| 158 | final long max_bytes, |
| 159 | final boolean override_count_limit, |
| 160 | final boolean multiget_no_meta) { |
| 161 | this.tsdb = tsdb; |
| 162 | this.metric = metric; |
| 163 | this.tags = tags; |
| 164 | this.start_row_time = start_row_time; |
| 165 | this.end_row_time = end_row_time; |
| 166 | this.table_to_fetch = table_to_fetch; |
| 167 | this.spans = spans; |
| 168 | this.histogramSpans = histogramSpans; |
| 169 | this.rollup_query = rollup_query; |
| 170 | this.query_stats = query_stats; |
| 171 | this.query_index = query_index; |
| 172 | this.multiget_no_meta = multiget_no_meta; |
| 173 | |
| 174 | if (tags == null) { |
| 175 | throw new IllegalArgumentException("Tags list cannot be null or empty"); |
| 176 | } |
| 177 | if (tags.isEmpty()) { |
| 178 | query.setNoResults(true); |
| 179 | } |
| 180 | if (end_row_time <= start_row_time) { |
| 181 | throw new IllegalArgumentException("Start time cannot be later or " |
| 182 | + "equal to the end time"); |
| 183 | } |
| 184 | |
| 185 | concurrency_multi_get = tsdb.config |
| 186 | .getInt("tsd.query.multi_get.concurrent"); |
| 187 | batch_size = tsdb.config.getInt("tsd.query.multi_get.batch_size"); |
| 188 | get_all_salts = tsdb.config.getBoolean("tsd.query.multi_get.get_all_salts"); |
| 189 | multi_get_tasks = new ArrayList<List<MultiGetTask>>(concurrency_multi_get); |
| 190 | multi_get_indexs = new ArrayList<AtomicInteger>(concurrency_multi_get); |
| 191 | for (int i = 0; i < concurrency_multi_get; ++i) { |
| 192 | multi_get_tasks.add(new ArrayList<MultiGetTask>()); |
| 193 | multi_get_indexs.add(new AtomicInteger(-1)); |
| 194 | } |
| 195 | |
| 196 | number_pre_filter_data_point = new AtomicLong(0); |
| 197 | num_post_filter_data_points = new AtomicLong(0); |
| 198 | byte_size_fetched = new AtomicLong(0); |
| 199 | finished_multi_get_cnt = new AtomicInteger(0); |
| 200 | multi_get_seq_id = new AtomicInteger(-1); |
| 201 | number_byte_fetched = new AtomicLong(0); |
| 202 | this.max_bytes = max_bytes; |
nothing calls this directly
no test coverage detected