Skip to content

Conversation

@morningman
Copy link
Contributor

@morningman morningman commented Jun 15, 2020

Fix: #3871

Mainly change:

  1. Fix the bug in update_status(status) of PlanFragmentExecutor.
  2. When the FE Coordinator executes execRemoteFragmentAsync(), if it finds an RPC error, return a Future with an error code instead of exception.
  3. Protect the _status in RuntimeState with lock
  4. Move the _runtime_profile of RuntimeState before the _obj_pool, so that the profile will be
    deconstructed after the object pool.
  5. Remove the unused ObjectPool param in RuntimeProfile constructor. If I don't remove it,
    RuntimeProfile will depends on the _obj_pool in RuntimeProfile.

@morningman morningman added area/load Issues or PRs related to all kinds of load kind/fix Categorizes issue or PR as related to a bug. labels Jun 15, 2020
PExecPlanFragmentResult result = new PExecPlanFragmentResult();
PStatus pStatus = new PStatus();
pStatus.error_msgs.add(e.getMessage());
// use THRIFT_RPC_ERROR so that this BE will be added to the black list later.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

black list --> blacklist

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

done

@kangkaisen
Copy link
Contributor

When the FE Coordinator executes execRemoteFragmentAsync(), if it finds an RPC error, return a Future with an error code instead of exception.

@morningman Hi, where is the code?

@morningman
Copy link
Contributor Author

When the FE Coordinator executes execRemoteFragmentAsync(), if it finds an RPC error, return a Future with an error code instead of exception.

@morningman Hi, where is the code?

Oh, sorry, I think i miss some part of the code...

@morningman
Copy link
Contributor Author

When the FE Coordinator executes execRemoteFragmentAsync(), if it finds an RPC error, return a Future with an error code instead of exception.

@morningman Hi, where is the code?

Oh, sorry, I think i miss some part of the code...

Done

@morningman
Copy link
Contributor Author

hi @kangkaisen Could you help to review again?

@kangkaisen
Copy link
Contributor

OK

kangkaisen
kangkaisen previously approved these changes Jun 17, 2020
Copy link
Contributor

@kangkaisen kangkaisen left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@morningman morningman added the approved Indicates a PR has been approved by one committer. label Jun 18, 2020
Copy link
Contributor

@EmmyMiao87 EmmyMiao87 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@morningman morningman merged commit 51367ab into apache:master Jun 19, 2020
morningman added a commit to morningman/doris that referenced this pull request Jun 20, 2020
Mainly change:
1. Fix the bug in `update_status(status)` of `PlanFragmentExecutor`.
2. When the FE Coordinator executes `execRemoteFragmentAsync()`, if it finds an RPC error, return a Future with an error code instead of exception.
3. Protect the `_status` in RuntimeState with lock
4. Move the `_runtime_profile` of RuntimeState before the `_obj_pool`, so that the profile will be
deconstructed after the object pool.
5. Remove the unused `ObjectPool` param in RuntimeProfile constructor. If I don't remove it,
RuntimeProfile will depends on the `_obj_pool` in RuntimeProfile.
EmmyMiao87 pushed a commit that referenced this pull request Jun 21, 2020
This bug is introduced by PR #3872

In that PR, I removed the obj_pool param of the RuntimeProfile constructor.
So the first param is std::string.
But in DataStreamRecv, it accidentally pass a nullptr to std::string, it compiles
OK but will cause runtime error.

Fix #3917
morningman added a commit to morningman/doris that referenced this pull request Jun 22, 2020
Mainly change:
1. Fix the bug in `update_status(status)` of `PlanFragmentExecutor`.
2. When the FE Coordinator executes `execRemoteFragmentAsync()`, if it finds an RPC error, return a Future with an error code instead of exception.
3. Protect the `_status` in RuntimeState with lock
4. Move the `_runtime_profile` of RuntimeState before the `_obj_pool`, so that the profile will be
deconstructed after the object pool.
5. Remove the unused `ObjectPool` param in RuntimeProfile constructor. If I don't remove it,
RuntimeProfile will depends on the `_obj_pool` in RuntimeProfile.
morningman added a commit that referenced this pull request Jun 25, 2020
This bug is introduced by #3872.
It will cause some expected to be cancelled queries not being cancelled.
morningman added a commit to morningman/doris that referenced this pull request Jun 28, 2020
This bug is introduced by apache#3872.
It will cause some expected to be cancelled queries not being cancelled.
englefly pushed a commit to englefly/incubator-doris that referenced this pull request May 6, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved Indicates a PR has been approved by one committer. area/load Issues or PRs related to all kinds of load kind/fix Categorizes issue or PR as related to a bug.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bug] BE crash when doing insert stmt

5 participants