fix: write cancel when flush pending write queue (#940)

## Related Issues
Closes #

## Detailed Changes
Currently, the writer for the first request in the pending write queue
is responsible for flushing all the writes in the queue, but it can't be
ensured to always trigger flush because it may be cancelled when await
for the serial exec lock. And this change set replaces the
`try_join_all` in the rpc services to avoid such cancellation.

## Test Plan 
Test it manually.
4 files changed
tree: b33d9c38122c5fe90a370c226dc3d2ffa69513d8
  1. .github/
  2. analytic_engine/
  3. benchmarks/
  4. catalog/
  5. catalog_impls/
  6. cluster/
  7. common_types/
  8. common_util/
  9. components/
  10. df_operator/
  11. docker/
  12. docs/
  13. integration_tests/
  14. interpreters/
  15. meta_client/
  16. partition_table_engine/
  17. proxy/
  18. query_engine/
  19. query_frontend/
  20. remote_engine_client/
  21. router/
  22. scripts/
  23. server/
  24. src/
  25. system_catalog/
  26. table_engine/
  27. tools/
  28. wal/
  29. .dockerignore
  30. .gitignore
  31. .gitmodules
  32. .pre-commit-config.yaml
  33. build.rs
  34. Cargo.lock
  35. Cargo.toml
  36. clippy.toml
  37. CODE_OF_CONDUCT.md
  38. CONTRIBUTING.md
  39. Dockerfile
  40. LICENSE
  41. Makefile
  42. README-CN.md
  43. README.md
  44. rust-toolchain
  45. rustfmt.toml
README.md

CeresDB

License CI OpenIssue Slack Docker

中文

CeresDB is a high-performance, distributed, cloud native time-series database.

Documentation

Contributing

Any contribution is welcome!

Read our Contributing Guide and make your first contribution!

Acknowledgment

Some design of CeresDB references influxdb_iox, and some specific module implementations reference tikv and other excellent open source projects, thanks to InfluxDB, TiKV, and any other referenced great open source projects.

Licensing

CeresDB is under Apache License 2.0.

Community and support