short code = fetchResponse.errorCode(fp.getTopic(), fp.getPartition()); if (code == ErrorMapping.OffsetOutOfRangeCode()) {
if (code == ErrorMapping.OffsetOutOfRangeCode() && config.resetOffsetIfOutOfRange) { long startOffset = getOffset(topic, partition, config.startOffsetTime); offset = startOffset;
if (errorCode == ErrorMapping.RequestTimedOutCode()) { log.info("kafka request timed out, response[%s]", response); } else if (errorCode == ErrorMapping.OffsetOutOfRangeCode()) { long newOffset = getOffset(earliest); log.info("got [%s] offset[%s] for [%s][%s]", earliest ? "earliest" : "latest", newOffset, topic, partitionId);
if (fetchResponseCode == ErrorMapping.OffsetOutOfRangeCode()) { this.emittingOffset = consumer.getOffset(config.topic, partition, kafka.api.OffsetRequest.LatestTime());
if (errorCode == ErrorMapping.OffsetOutOfRangeCode()) { long seekTo = consumer.initialOffset.toLowerCase().equals("earliest") ? OffsetRequest.EarliestTime() : OffsetRequest.LatestTime();
LOG.info("Failed to fetch message on {}. Error: {}", topicPart, errorCode); if (errorCode == ErrorMapping.OffsetOutOfRangeCode()) { offset.set(kafka.api.OffsetRequest.EarliestTime());
if (errorCode == ErrorMapping.OffsetOutOfRangeCode()) { long seekTo = consumer.initialOffset.toLowerCase().equals("earliest") ? OffsetRequest.EarliestTime() : OffsetRequest.LatestTime();
LOG.info("Failed to fetch message on {}. Error: {}", topicPart, errorCode); if (errorCode == ErrorMapping.OffsetOutOfRangeCode()) { offset.set(kafka.api.OffsetRequest.EarliestTime());
private ByteBufferMessageSet fetchMessageSet(long fetchOffset) throws OffsetOutOfRangeException { Preconditions.checkArgument(fetchOffset >= 0, String.format("Illegal fetch offset %d", fetchOffset)); int failureCount = 0; while (true) { SimpleConsumer consumer = getConsumer(); FetchRequest req = new FetchRequestBuilder() .clientId(clientName) .addFetch(topic, partition, fetchOffset, BUFFER_SIZE_BYTES) .maxWait(fetchTimeoutMs) .build(); FetchResponse fetchResponse = consumer.fetch(req); if (!fetchResponse.hasError()) { return fetchResponse.messageSet(topic, partition); } short errorCode = fetchResponse.errorCode(topic, partition); if (++failureCount >= MAX_KAFKA_FETCH_RETRIES) { throw new RuntimeException( String.format("Error fetching data from broker %s:%d for topic %s, partition %d. Error code: %d", consumer.host(), consumer.port(), topic, partition, errorCode)); } LOG.warn("Error fetching data from broker {}:{} for topic {}, partition {}. Error code: {}", consumer.host(), consumer.port(), topic, partition, errorCode); if (errorCode == ErrorMapping.OffsetOutOfRangeCode()) { throw new OffsetOutOfRangeException(String.format( "Requested offset %d is out of range for topic %s partition %d", fetchOffset, topic, partition)); } closeConsumer(); } }
private ByteBufferMessageSet fetchMessageSet(long fetchOffset) throws OffsetOutOfRangeException { Preconditions.checkArgument(fetchOffset >= 0, String.format("Illegal fetch offset %d", fetchOffset)); int failureCount = 0; while (true) { SimpleConsumer consumer = getConsumer(); FetchRequest req = new FetchRequestBuilder() .clientId(clientName) .addFetch(topic, partition, fetchOffset, BUFFER_SIZE_BYTES) .maxWait(fetchTimeoutMs) .build(); FetchResponse fetchResponse = consumer.fetch(req); if (!fetchResponse.hasError()) { return fetchResponse.messageSet(topic, partition); } short errorCode = fetchResponse.errorCode(topic, partition); if (++failureCount >= MAX_KAFKA_FETCH_RETRIES) { throw new RuntimeException( String.format("Error fetching data from broker %s:%d for topic %s, partition %d. Error code: %d", consumer.host(), consumer.port(), topic, partition, errorCode)); } LOG.warn("Error fetching data from broker {}:{} for topic {}, partition {}. Error code: {}", consumer.host(), consumer.port(), topic, partition, errorCode); if (errorCode == ErrorMapping.OffsetOutOfRangeCode()) { throw new OffsetOutOfRangeException(String.format( "Requested offset %d is out of range for topic %s partition %d", fetchOffset, topic, partition)); } closeConsumer(); } }
if (code == ErrorMapping.OffsetOutOfRangeCode()) {
logger.error("continuous receive " + numErr + " responses, exiting consumer thread......"); return; } else if(code == ErrorMapping.OffsetOutOfRangeCode()) { // reset read offset long minOffset = getMinOffset(); long maxOffset = getMaxOffset();
.OffsetOutOfRangeCode()) { log.info("Out of bounds = " + nextOffsetToConsume); return false;
System.out.println("Error fetching data from the Broker:" + leadBroker + " Reason: " + code); if (numErrors > 5) break; if (code == ErrorMapping.OffsetOutOfRangeCode()) {
short code = fetchResponse.errorCode(fp.getTopic(), fp.getPartition()); if (code == ErrorMapping.OffsetOutOfRangeCode()) {
short code = fetchResponse.errorCode(fp.getTopic(), fp.getPartition()); if (code == ErrorMapping.OffsetOutOfRangeCode()) {
if (code == ErrorMapping.OffsetOutOfRangeCode()) {
if (fetchResponseCode == ErrorMapping.OffsetOutOfRangeCode()) {
if (fetchResponse.hasError()) { short code = fetchResponse.errorCode(m_topic, m_partition); if (code == ErrorMapping.OffsetOutOfRangeCode()) { long smallest = -1L, largest = -1L; try {
if (code == ErrorMapping.OffsetOutOfRangeCode()) {