@@ -215,8 +215,7 @@ class SegmentImpl : public Segment,
215215 RecordBatchReaderPtr scan (
216216 const std::vector<std::string> &columns) const override ;
217217
218- Status add_column (const std::string &column_name,
219- FieldSchema::Ptr column_schema,
218+ Status add_column (FieldSchema::Ptr column_schema,
220219 const std::string &expression,
221220 const AddColumnOptions &options) override ;
222221
@@ -3020,8 +3019,7 @@ Status SegmentImpl::reopen_invert_indexer(bool read_only) {
30203019 return Status::OK ();
30213020}
30223021
3023- Status SegmentImpl::add_column (const std::string &column_name,
3024- FieldSchema::Ptr column_schema,
3022+ Status SegmentImpl::add_column (FieldSchema::Ptr column_schema,
30253023 const std::string &expression,
30263024 const AddColumnOptions & /* options*/ ) {
30273025 if (memory_store_) {
@@ -3084,8 +3082,8 @@ Status SegmentImpl::add_column(const std::string &column_name,
30843082 return Status::InternalError (result.status ().message ());
30853083 }
30863084 auto dataset = std::move (result).ValueOrDie ();
3087- auto eval_result = EvaluateExpressionWithDataset (dataset, column_name, expr,
3088- expected_type);
3085+ auto eval_result = EvaluateExpressionWithDataset (
3086+ dataset, column_schema-> name (), expr, expected_type);
30893087 if (!eval_result.ok ()) {
30903088 return Status::InternalError (" evaluate expression failed:" ,
30913089 eval_result.status ().message ());
@@ -3109,9 +3107,9 @@ Status SegmentImpl::add_column(const std::string &column_name,
31093107
31103108 std::vector<BlockMeta> new_blocks;
31113109 status = WriteColumnInBlocks (
3112- column_name , new_column, filter_column_blocks, path_, segment_meta_-> id () ,
3113- [this ]() { return allocate_block_id (); }, !options_. enable_mmap_ ,
3114- &new_blocks);
3110+ column_schema-> name () , new_column, filter_column_blocks, path_,
3111+ segment_meta_-> id (), [this ]() { return allocate_block_id (); },
3112+ !options_. enable_mmap_ , &new_blocks);
31153113 if (!status.ok ()) {
31163114 return Status::InternalError (status.message ());
31173115 }
@@ -3158,7 +3156,7 @@ Status SegmentImpl::add_column(const std::string &column_name,
31583156 segment_meta_->add_persisted_block (block);
31593157 }
31603158
3161- auto column_indexer = (*invert_indexers_)[column_name ];
3159+ auto column_indexer = (*invert_indexers_)[column_schema-> name () ];
31623160 auto s = insert_array_to_invert_indexer (column_schema, new_column,
31633161 &column_indexer);
31643162 CHECK_RETURN_STATUS (s);
0 commit comments