private int EstimateBufferSize()

in src/Apache.IoTDB/DataStructure/Tablet.cs [300:340]


        private int EstimateBufferSize()
        {
            var estimateSize = 0;

            // estimate one row size
            foreach (var dataType in DataTypes)
            {
                switch (dataType)
                {
                    case TSDataType.BOOLEAN:
                        estimateSize += 1;
                        break;
                    case TSDataType.INT32:
                    case TSDataType.DATE:
                        estimateSize += 4;
                        break;
                    case TSDataType.INT64:
                    case TSDataType.TIMESTAMP:
                        estimateSize += 8;
                        break;
                    case TSDataType.FLOAT:
                        estimateSize += 4;
                        break;
                    case TSDataType.DOUBLE:
                        estimateSize += 8;
                        break;
                    case TSDataType.TEXT:
                    case TSDataType.BLOB:
                    case TSDataType.STRING:
                        estimateSize += 8;
                        break;
                    default:
                        throw new Exception(
                            $"Input error. Data type {dataType} is not supported.",
                            null);
                }
            }

            estimateSize *= _timestamps.Count;
            return estimateSize;
        }