@Override public String toString() { StringBuilder sb = new StringBuilder("MaprDBJsonRecordReader[Table=") .append(table != null ? table.getPath() : null); if (reader != null) { sb.append(", Document ID=") .append(IdCodec.asString(reader.getId())); } sb.append(", reader=") .append(reader) .append(']'); return sb.toString(); } }
public void readToInitSchema() { DBDocumentReaderBase reader = null; vectorWriter.setPosition(0); try (DocumentStream dstream = table.find()) { reader = (DBDocumentReaderBase) dstream.iterator().next().asReader(); documentWriter.writeDBDocument(vectorWriter, reader); } catch(UserException e) { throw UserException.unsupportedError(e) .addContext(String.format("Table: %s, document id: '%s'", getTable().getPath(), reader == null ? null : IdCodec.asString(reader.getId()))) .build(logger); } catch (SchemaChangeException e) { if (getIgnoreSchemaChange()) { logger.warn("{}. Dropping the row from result.", e.getMessage()); logger.debug("Stack trace:", e); } else { throw dataReadError(logger, e); } } finally { vectorWriter.setPosition(0); } }
@Override public void writeDBDocument(VectorContainerWriter vectorWriter, DBDocumentReaderBase reader) throws SchemaChangeException { MapWriter writer = vectorWriter.rootAsMap(); Value id = reader.getId(); try { switch(id.getType()) { case STRING: valueWriter.writeString(writer, ID_KEY, id.getString()); break; case BINARY: valueWriter.writeBinary(writer, ID_KEY, id.getBinary()); break; default: throw new UnsupportedOperationException(id.getType() + " is not a supported type for _id field."); } } catch (IllegalStateException | IllegalArgumentException e) { throw schemaChangeException(logger, e, "Possible schema change at _id: '%s'", IdCodec.asString(id)); } }
String err_row = reader.getId().asJsonString(); if (ignoreSchemaChange) { logger.warn("{}. Dropping row '{}' from result.", e.getMessage(), err_row); table.getPath(), document.asReader() == null ? null : IdCodec.asString(((DBDocumentReaderBase)document.asReader()).getId()))) .build(logger); } catch (SchemaChangeException e) { String err_row = ((DBDocumentReaderBase)document.asReader()).getId().asJsonString(); if (ignoreSchemaChange) { logger.warn("{}. Dropping row '{}' from result.", e.getMessage(), err_row);
} catch (UserException e) { throw UserException.unsupportedError(e).addContext(String.format("Table: %s, document id: '%s'", getTable().getPath(), reader == null ? null : IdCodec.asString(reader.getId()))).build(logger); } catch (SchemaChangeException e) { if (getIgnoreSchemaChange()) {
@Override public String toString() { StringBuilder sb = new StringBuilder("MaprDBJsonRecordReader[Table=") .append(table != null ? table.getPath() : null); if (reader != null) { sb.append(", Document ID=") .append(IdCodec.asString(reader.getId())); } sb.append(", reader=") .append(reader) .append(']'); return sb.toString(); } }
@Override public void writeDBDocument(VectorContainerWriter vectorWriter, DBDocumentReaderBase reader) throws SchemaChangeException { MapWriter writer = vectorWriter.rootAsMap(); Value id = reader.getId(); try { switch(id.getType()) { case STRING: valueWriter.writeString(writer, ID_KEY, id.getString()); break; case BINARY: valueWriter.writeBinary(writer, ID_KEY, id.getBinary()); break; default: throw new UnsupportedOperationException(id.getType() + " is not a supported type for _id field."); } } catch (IllegalStateException | IllegalArgumentException e) { throw schemaChangeException(logger, e, "Possible schema change at _id: '%s'", IdCodec.asString(id)); } }
public void readToInitSchema() { DBDocumentReaderBase reader = null; vectorWriter.setPosition(0); try (DocumentStream dstream = table.find()) { reader = (DBDocumentReaderBase) dstream.iterator().next().asReader(); documentWriter.writeDBDocument(vectorWriter, reader); } catch(UserException e) { throw UserException.unsupportedError(e) .addContext(String.format("Table: %s, document id: '%s'", getTable().getPath(), reader == null ? null : IdCodec.asString(reader.getId()))) .build(logger); } catch (SchemaChangeException e) { if (getIgnoreSchemaChange()) { logger.warn("{}. Dropping the row from result.", e.getMessage()); logger.debug("Stack trace:", e); } else { throw dataReadError(logger, e); } } finally { vectorWriter.setPosition(0); } }
String err_row = reader.getId().asJsonString(); if (ignoreSchemaChange) { logger.warn("{}. Dropping row '{}' from result.", e.getMessage(), err_row); table.getPath(), document.asReader() == null ? null : IdCodec.asString(((DBDocumentReaderBase)document.asReader()).getId()))) .build(logger); } catch (SchemaChangeException e) { String err_row = ((DBDocumentReaderBase)document.asReader()).getId().asJsonString(); if (ignoreSchemaChange) { logger.warn("{}. Dropping row '{}' from result.", e.getMessage(), err_row);
} catch (UserException e) { throw UserException.unsupportedError(e).addContext(String.format("Table: %s, document id: '%s'", getTable().getPath(), reader == null ? null : IdCodec.asString(reader.getId()))).build(logger); } catch (SchemaChangeException e) { if (getIgnoreSchemaChange()) {