[OPT] opt lob manager buffer usage
This commit is contained in:
		@ -1345,7 +1345,7 @@ int ObLobManager::append(
 | 
				
			|||||||
      }
 | 
					      }
 | 
				
			||||||
      // prepare write buffer
 | 
					      // prepare write buffer
 | 
				
			||||||
      ObString write_buffer;
 | 
					      ObString write_buffer;
 | 
				
			||||||
      int64_t buf_len = ObLobMetaUtil::LOB_OPER_PIECE_DATA_SIZE;
 | 
					      int64_t buf_len = OB_MIN(ObLobMetaUtil::LOB_OPER_PIECE_DATA_SIZE, append_lob_len);
 | 
				
			||||||
      char *buf = nullptr;
 | 
					      char *buf = nullptr;
 | 
				
			||||||
      if (OB_SUCC(ret)) {
 | 
					      if (OB_SUCC(ret)) {
 | 
				
			||||||
        buf = reinterpret_cast<char*>(param.allocator_->alloc(buf_len));
 | 
					        buf = reinterpret_cast<char*>(param.allocator_->alloc(buf_len));
 | 
				
			||||||
@ -1444,7 +1444,7 @@ int ObLobManager::append(
 | 
				
			|||||||
            } else {
 | 
					            } else {
 | 
				
			||||||
              // prepare read buffer
 | 
					              // prepare read buffer
 | 
				
			||||||
              ObString read_buffer;
 | 
					              ObString read_buffer;
 | 
				
			||||||
              uint64_t read_buff_size = LOB_READ_BUFFER_LEN;
 | 
					              uint64_t read_buff_size = OB_MIN(LOB_READ_BUFFER_LEN, read_param.byte_size_);
 | 
				
			||||||
              char *read_buff = static_cast<char*>(param.allocator_->alloc(read_buff_size));
 | 
					              char *read_buff = static_cast<char*>(param.allocator_->alloc(read_buff_size));
 | 
				
			||||||
              if (OB_ISNULL(read_buff)) {
 | 
					              if (OB_ISNULL(read_buff)) {
 | 
				
			||||||
                ret = OB_ALLOCATE_MEMORY_FAILED;
 | 
					                ret = OB_ALLOCATE_MEMORY_FAILED;
 | 
				
			||||||
@ -1704,7 +1704,7 @@ int ObLobManager::append(ObLobAccessParam& param, ObLobLocatorV2& lob, ObLobMeta
 | 
				
			|||||||
      }
 | 
					      }
 | 
				
			||||||
      // prepare read buffer
 | 
					      // prepare read buffer
 | 
				
			||||||
      ObString read_buffer;
 | 
					      ObString read_buffer;
 | 
				
			||||||
      uint64_t read_buff_size = LOB_READ_BUFFER_LEN;
 | 
					      uint64_t read_buff_size = OB_MIN(LOB_READ_BUFFER_LEN, append_lob_len);
 | 
				
			||||||
      char *read_buff = static_cast<char*>(param.allocator_->alloc(read_buff_size));
 | 
					      char *read_buff = static_cast<char*>(param.allocator_->alloc(read_buff_size));
 | 
				
			||||||
      if (OB_ISNULL(read_buff)) {
 | 
					      if (OB_ISNULL(read_buff)) {
 | 
				
			||||||
        ret = OB_ALLOCATE_MEMORY_FAILED;
 | 
					        ret = OB_ALLOCATE_MEMORY_FAILED;
 | 
				
			||||||
@ -2389,7 +2389,7 @@ int ObLobManager::write_inrow(ObLobAccessParam& param, ObLobLocatorV2& lob, uint
 | 
				
			|||||||
      } else {
 | 
					      } else {
 | 
				
			||||||
        // prepare read buffer
 | 
					        // prepare read buffer
 | 
				
			||||||
        ObString read_buffer;
 | 
					        ObString read_buffer;
 | 
				
			||||||
        uint64_t read_buff_size = LOB_READ_BUFFER_LEN;
 | 
					        uint64_t read_buff_size = OB_MIN(LOB_READ_BUFFER_LEN, read_param.byte_size_);
 | 
				
			||||||
        char *read_buff = static_cast<char*>(param.allocator_->alloc(read_buff_size));
 | 
					        char *read_buff = static_cast<char*>(param.allocator_->alloc(read_buff_size));
 | 
				
			||||||
        if (OB_ISNULL(read_buff)) {
 | 
					        if (OB_ISNULL(read_buff)) {
 | 
				
			||||||
          ret = OB_ALLOCATE_MEMORY_FAILED;
 | 
					          ret = OB_ALLOCATE_MEMORY_FAILED;
 | 
				
			||||||
@ -2677,7 +2677,7 @@ int ObLobManager::write_outrow(ObLobAccessParam& param, ObLobLocatorV2& lob, uin
 | 
				
			|||||||
      } else {
 | 
					      } else {
 | 
				
			||||||
        // prepare read buffer
 | 
					        // prepare read buffer
 | 
				
			||||||
        ObString read_buffer;
 | 
					        ObString read_buffer;
 | 
				
			||||||
        uint64_t read_buff_size = LOB_READ_BUFFER_LEN;
 | 
					        uint64_t read_buff_size = OB_MIN(LOB_READ_BUFFER_LEN, read_param.byte_size_);;
 | 
				
			||||||
        char *read_buff = static_cast<char*>(param.allocator_->alloc(read_buff_size));
 | 
					        char *read_buff = static_cast<char*>(param.allocator_->alloc(read_buff_size));
 | 
				
			||||||
        if (OB_ISNULL(read_buff)) {
 | 
					        if (OB_ISNULL(read_buff)) {
 | 
				
			||||||
          ret = OB_ALLOCATE_MEMORY_FAILED;
 | 
					          ret = OB_ALLOCATE_MEMORY_FAILED;
 | 
				
			||||||
@ -2796,7 +2796,7 @@ int ObLobManager::write(ObLobAccessParam& param, ObString& data)
 | 
				
			|||||||
        ObLobQueryIter *iter = nullptr;
 | 
					        ObLobQueryIter *iter = nullptr;
 | 
				
			||||||
        // prepare read buffer
 | 
					        // prepare read buffer
 | 
				
			||||||
        ObString read_buffer;
 | 
					        ObString read_buffer;
 | 
				
			||||||
        uint64_t read_buff_size = LOB_READ_BUFFER_LEN;
 | 
					        uint64_t read_buff_size = ObLobMetaUtil::LOB_OPER_PIECE_DATA_SIZE;
 | 
				
			||||||
        char *read_buff = static_cast<char*>(param.allocator_->alloc(read_buff_size));
 | 
					        char *read_buff = static_cast<char*>(param.allocator_->alloc(read_buff_size));
 | 
				
			||||||
        if (OB_ISNULL(read_buff)) {
 | 
					        if (OB_ISNULL(read_buff)) {
 | 
				
			||||||
          ret = OB_ALLOCATE_MEMORY_FAILED;
 | 
					          ret = OB_ALLOCATE_MEMORY_FAILED;
 | 
				
			||||||
@ -3601,7 +3601,7 @@ int ObLobQueryIter::open(ObLobAccessParam ¶m, ObLobCtx& lob_ctx)
 | 
				
			|||||||
  } else if (OB_FAIL(lob_ctx.lob_meta_mngr_->scan(param, meta_iter_))) {
 | 
					  } else if (OB_FAIL(lob_ctx.lob_meta_mngr_->scan(param, meta_iter_))) {
 | 
				
			||||||
    LOG_WARN("open meta iter failed.");
 | 
					    LOG_WARN("open meta iter failed.");
 | 
				
			||||||
  } else {
 | 
					  } else {
 | 
				
			||||||
    last_data_buf_len_ = ObLobMetaUtil::LOB_OPER_PIECE_DATA_SIZE;
 | 
					    last_data_buf_len_ = OB_MIN(ObLobMetaUtil::LOB_OPER_PIECE_DATA_SIZE, param.byte_size_);
 | 
				
			||||||
    last_data_ptr_ = reinterpret_cast<char*>(param.allocator_->alloc(last_data_buf_len_));
 | 
					    last_data_ptr_ = reinterpret_cast<char*>(param.allocator_->alloc(last_data_buf_len_));
 | 
				
			||||||
    if (OB_ISNULL(last_data_ptr_)) {
 | 
					    if (OB_ISNULL(last_data_ptr_)) {
 | 
				
			||||||
      ret = OB_ALLOCATE_MEMORY_FAILED;
 | 
					      ret = OB_ALLOCATE_MEMORY_FAILED;
 | 
				
			||||||
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user