if (!identifiersByDataSource.containsKey(identifier.getDataSource())) { identifiersByDataSource.put(identifier.getDataSource(), new HashSet<>()); identifiersByDataSource.get(identifier.getDataSource()).add(identifier);
private void addSegment(final SegmentIdWithShardSpec identifier) { segments.put(identifier.getInterval().getStartMillis(), identifier); try { segmentAnnouncer.announceSegment( new DataSegment( identifier.getDataSource(), identifier.getInterval(), identifier.getVersion(), ImmutableMap.of(), ImmutableList.of(), ImmutableList.of(), identifier.getShardSpec(), null, 0 ) ); } catch (IOException e) { log.makeAlert(e, "Failed to announce new segment[%s]", identifier.getDataSource()) .addData("interval", identifier.getInterval()) .emit(); } }
if (!identifier.getDataSource().equals(schema.getDataSource())) { throw new IAE( "Expected dataSource[%s] but was asked to insert row for dataSource[%s]?!", schema.getDataSource(), identifier.getDataSource() );
.map( id -> new DataSegment( id.getDataSource(), id.getInterval(), id.getVersion(),
@Test public void testSerde() throws Exception { final ObjectMapper objectMapper = new DefaultObjectMapper(); objectMapper.registerSubtypes(NumberedShardSpec.class); final SegmentIdWithShardSpec id2 = objectMapper.readValue( objectMapper.writeValueAsBytes(ID_1), SegmentIdWithShardSpec.class ); Assert.assertEquals(ID_1, id2); Assert.assertEquals(DATA_SOURCE, id2.getDataSource()); Assert.assertEquals(INTERVAL, id2.getInterval()); Assert.assertEquals(VERSION, id2.getVersion()); Assert.assertEquals(SHARD_SPEC_1.getPartitionNum(), id2.getShardSpec().getPartitionNum()); Assert.assertEquals(SHARD_SPEC_1.getPartitions(), ((NumberedShardSpec) id2.getShardSpec()).getPartitions()); }