These are chat archives for linkedin/pinot

15th
Jul 2016
dongbo
@dongbo555
Jul 15 2016 02:28
@jfim yes, According to the above statements´╝îI changed the pinot's dataDir ,controllerDir,segmentsDir. but when I restart the pinot , the tables data and segment data has completely gone. however ,in case of default configuration , the tables data existed , the segments data is gone when I restart the pinot. I want to know what can I do to keep the both of tables and segments data when I restart the pinot.
dongbo
@dongbo555
Jul 15 2016 02:36
@jfim I have a more question, when I set "metricFieldSpecs" column is null in schema file, or delete "metricFieldSpecs" column ,the pinot throw an exception, As shown below :
org.codehaus.jackson.map.JsonMappingException: Unknown default null value for metric of data type STRING (through reference chain: java.util.ArrayList[0]->com.linkedin.pinot.common.data.MetricFieldSpec["defaultNullValue"])
at org.codehaus.jackson.map.JsonMappingException.wrapWithPath(JsonMappingException.java:218)
at org.codehaus.jackson.map.JsonMappingException.wrapWithPath(JsonMappingException.java:183)
at org.codehaus.jackson.map.ser.SerializerBase.wrapAndThrow(SerializerBase.java:131)
at org.codehaus.jackson.map.ser.BeanSerializer.serializeFields(BeanSerializer.java:183)
at org.codehaus.jackson.map.ser.BeanSerializer.serialize(BeanSerializer.java:142)
at org.codehaus.jackson.map.ser.ContainerSerializers$IndexedListSerializer.serializeContents(ContainerSerializers.java:304)
at org.codehaus.jackson.map.ser.ContainerSerializers$IndexedListSerializer.serializeContents(ContainerSerializers.java:254)
at org.codehaus.jackson.map.ser.ContainerSerializers$AsArraySerializer.serialize(ContainerSerializers.java:142)
at org.codehaus.jackson.map.ser.StdSerializerProvider._serializeValue(StdSerializerProvider.java:600)
at org.codehaus.jackson.map.ser.StdSerializerProvider.serializeValue(StdSerializerProvider.java:280)
at org.codehaus.jackson.map.ObjectMapper._configAndWriteValue(ObjectMapper.java:2267)
at org.codehaus.jackson.map.ObjectMapper.writeValueAsString(ObjectMapper.java:1836)
at com.linkedin.pinot.common.data.Schema.toString(Schema.java:296)
at java.lang.String.valueOf(String.java:2994)
at java.lang.StringBuilder.append(StringBuilder.java:131)
at com.linkedin.pinot.core.segment.index.SegmentMetadataImpl.toString(SegmentMetadataImpl.java:516)
at com.linkedin.pinot.server.starter.helix.HelixInstanceDataManager.addSegment(HelixInstanceDataManager.java:172)
at com.linkedin.pinot.server.starter.helix.SegmentOnlineOfflineStateModelFactory$SegmentOnlineOfflineStateModel.onBecomeOnlineFromOfflineForOfflineSegment(SegmentOnlineOfflineStateModelFactory.java:225)
at com.linkedin.pinot.server.starter.helix.SegmentOnlineOfflineStateModelFactory$SegmentOnlineOfflineStateModel.onBecomeOnlineFromOffline(SegmentOnlineOfflineStateModelFactory.java:128)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at org.apache.helix.messaging.handling.HelixStateTransitionHandler.invoke(HelixStateTransitionHandler.java:344)
at org.apache.helix.messaging.handling.HelixStateTransitionHandler.handleMessage(HelixStateTransitionHandler.java:290)
at org.apache.helix.messaging.handling.HelixTask.call(HelixTask.java:84)
at org.apache.helix.messaging.handling.HelixTask.call(HelixTask.java:41)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.UnsupportedOperationException: Unknown default null value for metric of data type STRING
at com.linkedin.pinot.common.data.FieldSpec.getDefaultNullValue(FieldSpec.java:313)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at org.codehaus.jackson.map.ser.BeanPropertyWriter.get(BeanPropertyWriter.java:467)
at org.codehaus.jackson.map.ser.BeanPropertyWriter.serializeAsField(BeanPropertyWriter.java:402)
at org.codehaus.jackson.map.ser.BeanSerializer.serializeFields(BeanSerializer.java:175)
... 27 more