Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

frontend: Incorrect use of block_on() on plan_fragmenter #7439

Closed
Tracked by #6640
ZENOTME opened this issue Jan 17, 2023 · 4 comments
Closed
Tracked by #6640

frontend: Incorrect use of block_on() on plan_fragmenter #7439

ZENOTME opened this issue Jan 17, 2023 · 4 comments
Assignees
Labels
type/bug Something isn't working

Comments

@ZENOTME
Copy link
Contributor

ZENOTME commented Jan 17, 2023

Describe the bug

In plan_fragmenter, for getting the source information(it's a async interface), we use block_on.

let mut enumerator = block_on(SplitEnumeratorImpl::create(property))?;

But that block_on will cause the woker in runtime blocked. In deterministic simulation, the runtime seems only run in a single thread, so that will cause whole program be blocked. For the block reason, we can refer:
tokio-rs/tokio-compat#23 (comment)

Solution:

  1. change BatchPlanFragmenter.split into a async. These solution seems impossible, because PlanRef is hard to satisfy Send,Sync trait. (BatchPlanFragmenter.split need to statisfy thread safety if we change it to a async function). Lots of thing need to modify if we take it...
  2. delay get source information util we schedule the fragment. (The schedule work is async so we can directly use the async operation in it)
    local_execute(session.clone(), query, query_snapshot).await?,

    This solution seems also impossible. We need the source information to get the parallelism, parallelism needed for creating fragment.
    let child_exchange_info = node.distribution().to_prost(builder.parallelism, self);
  3. I think it's a available solution. Including split information in SourceCatalog. And that we don't need async operation to get source information(including parallelism)
    For the timestamp limit, we can delay it util we schedule the fragment.
    kafka_enumerator.list_splits_batch(timestamp_bound.0, timestamp_bound.1),

To Reproduce

No response

Expected behavior

No response

Additional context

No response

@ZENOTME ZENOTME added the type/bug Something isn't working label Jan 17, 2023
@github-actions github-actions bot added this to the release-0.1.16 milestone Jan 17, 2023
@ZENOTME
Copy link
Contributor Author

ZENOTME commented Jan 17, 2023

@liurenjie1024 @tabVersion PTAL

@liurenjie1024 liurenjie1024 changed the title frontend: uncorrect use of block_on() on plan_fragmenter frontend: Incorrect use of block_on() on plan_fragmenter Jan 18, 2023
@liurenjie1024
Copy link
Contributor

Solution 3 sounds great, there is a problems to resolve for this approach:

  1. The partitions of source may change(e.g. user may add/remove partition of kafka), so we a job in meta to refresh this and send it to frontend. I think the refresh is already done?

@ZENOTME
Copy link
Contributor Author

ZENOTME commented Jan 18, 2023

For solution 3, it has the problem: for some source like s3, source information may be appropriate to store in catalog.

So I'm going to investiagte can we split plan_fragmenter into two phase(sync and async phase) to solve this problem.

@ZENOTME ZENOTME self-assigned this Jan 29, 2023
mergify bot pushed a commit that referenced this issue Feb 6, 2023
To solve #7439, we need to do async operation in plan_fragmentor. To do this, I seperate the plan_fragmentor into two phase **so that we can do async operation in phase 2**:

phase 1 : BatchPlanFragmenter.split(batch_node) -> PreStageGraph
phase 2 : PreStageGraph.complete() -> StageGraph

The difference between PreStageGraph and StageGraph is that StageGraph contains the exchange_info and parallism. These information will be filled in phase 2.

Approved-By: liurenjie1024
Little-Wallace added a commit to Little-Wallace/risingwave that referenced this issue Feb 6, 2023
commit a9af7f95b34e29905bcf5e3d0468b2a03da1b7a4
Author: Yuanxin Cao <[email protected]>
Date:   Mon Feb 6 16:06:45 2023 +0800

    fix(ci): fix main-cron by increasing total compute node memory in compaction test (#7703)

    As title.

    Approved-By: kwannoel

commit 77b46077e816cbc5a426fb1c3330cabd3579712e
Author: August <[email protected]>
Date:   Mon Feb 6 15:09:44 2023 +0800

    feat(frontend): introduce system catalog table pg_enum (#7706)

    Introduce system catalog table `pg_enum`.

    Approved-By: neverchanje

commit 7e565a713a182e832bb37db1c288caab4de897f5
Author: Yuanxin Cao <[email protected]>
Date:   Mon Feb 6 14:44:30 2023 +0800

    feat(optimizer): watermark derivation for various plan nodes (#7655)

    Add watermark derivation for various plan nodes. Watermark derivation for `TableScan` hasn't been implemented because it may need to modify table catalog and will be done in future PR.

    Approved-By: st1page

commit c3bb0275cfc59770730114eada575599f8cd150e
Author: ZENOTME <[email protected]>
Date:   Mon Feb 6 14:16:39 2023 +0800

    feat(frontend): seperate plan_fragmenter into two phase (#7581)

    To solve #7439, we need to do async operation in plan_fragmentor. To do this, I seperate the plan_fragmentor into two phase **so that we can do async operation in phase 2**:

    phase 1 : BatchPlanFragmenter.split(batch_node) -> PreStageGraph
    phase 2 : PreStageGraph.complete() -> StageGraph

    The difference between PreStageGraph and StageGraph is that StageGraph contains the exchange_info and parallism. These information will be filled in phase 2.

    Approved-By: liurenjie1024

commit 26780672c936c216bba1200431280456bc960877
Author: Eric Fu <[email protected]>
Date:   Mon Feb 6 13:06:04 2023 +0800

    feat: display git version in `version()` and server logs (#7690)

    Show Git version in `version()` and server logs. Would be helpful when looking into problems, especially for nightly versions.

    ```
    dev=> select version();
    version
    --------------------------------------------------
    PostgreSQL 13.9-RisingWave-0.2.0-alpha (b720f19)
    (1 row)
    ```

    ```
    2023-02-03T10:35:25.446834Z  INFO risingwave_compute::server: Starting compute node
    2023-02-03T10:35:25.446858Z  INFO risingwave_compute::server: > config: RwConfig { server: ServerConfig { heartbeat_interval_ms: 1000, max_heartbeat_interval_secs: 600, connection_pool_size: 16, metrics_level: 0 }, meta: MetaConfig { min_sst_retention_time_sec: 604800, collect_gc_watermark_spin_interval_sec: 5, periodic_compaction_interval_sec: 60, vacuum_interval_sec: 30, max_heartbeat_interval_secs: 600, disable_recovery: true, meta_leader_lease_secs: 10, dangerous_max_idle_secs: Some(1800), enable_compaction_deterministic: false, enable_committed_sst_sanity_check: false, node_num_monitor_interval_sec: 10, backend: Mem }, batch: BatchConfig { worker_threads_num: None, developer: DeveloperConfig { batch_output_channel_size: 64, batch_chunk_size: 1024, stream_enable_executor_row_count: false, stream_connector_message_buffer_size: 16, unsafe_stream_extreme_cache_size: 1024, stream_chunk_size: 1024, stream_exchange_initial_permits: 8192, stream_exchange_batched_permits: 1024 } }, streaming: StreamingConfig { barrier_interval_ms: 1000, in_flight_barrier_nums: 10000, checkpoint_frequency: 10, actor_runtime_worker_threads_num: None, enable_jaeger_tracing: false, async_stack_trace: On, developer: DeveloperConfig { batch_output_channel_size: 64, batch_chunk_size: 1024, stream_enable_executor_row_count: false, stream_connector_message_buffer_size: 16, unsafe_stream_extreme_cache_size: 1024, stream_chunk_size: 1024, stream_exchange_initial_permits: 8192, stream_exchange_batched_permits: 1024 } }, storage: StorageConfig { sstable_size_mb: 256, block_size_kb: 64, bloom_false_positive: 0.001, share_buffers_sync_parallelism: 1, share_buffer_compaction_worker_threads_number: 4, shared_buffer_capacity_mb: 1024, state_store: "hummock+memory", data_directory: "hummock_001", write_conflict_detection_enabled: true, block_cache_capacity_mb: 512, meta_cache_capacity_mb: 128, disable_remote_compactor: false, enable_local_spill: true, local_object_store: "tempdisk", share_buffer_upload_concurrency: 8, compactor_memory_limit_mb: 512, sstable_id_remote_fetch_number: 10, file_cache: FileCacheConfig { dir: "", capacity_mb: 1024, total_buffer_capacity_mb: 128, cache_file_fallocate_unit_mb: 512, cache_meta_fallocate_unit_mb: 16, cache_file_max_write_size_mb: 4 }, min_sst_size_for_streaming_upload: 33554432, max_sub_compaction: 4, object_store_use_batch_delete: true, max_concurrent_compaction_task_number: 16, enable_state_store_v1: false }, backup: BackupConfig { storage_url: "memory", storage_directory: "backup" } }
    2023-02-03T10:35:25.447014Z  INFO risingwave_compute::server: > debug assertions: on
    2023-02-03T10:35:25.447043Z  INFO risingwave_compute::server: > version: 0.2.0-alpha (75de7ee)
    ```

    Approved-By: liurenjie1024

commit 2dfa704001daa95bfa807512195d5783638477c5
Author: lmatz <[email protected]>
Date:   Mon Feb 6 12:23:39 2023 +0800

    fix(meta): temporarily does not require advertise_addr when using etcd

commit 167afb38e111ae87e220b476ac821d39c3961758
Author: xiangjinwu <[email protected]>
Date:   Mon Feb 6 12:11:40 2023 +0800

    refactor(DataType): cleanup outdated helpers (#7685)

    The following 2 helpers are no longer used in any place: `is_type_encodable`, `mem_cmp_eq_value_enc`.

    Note: right now all DataTypes are encodable in memcomparable format. We will reintroduce the difference and disallow certain types from being used as memcomparable later.

    Approved-By: liurenjie1024

commit b996ba1ee1b4de45d9ccfdff581f8b2c479dee70
Author: ZENOTME <[email protected]>
Date:   Mon Feb 6 11:13:19 2023 +0800

    chore(test):add e2e test for producing timestamp in kafka source (#7699)

    Approved-By: liurenjie1024

commit 50fc4495806f3e69b9bf8eb5def8bc7cf0894e0c
Author: Eric Fu <[email protected]>
Date:   Mon Feb 6 10:44:18 2023 +0800

    fix: alias of argument `advertise_addr` (#7702)

    The alias of `--advertise-addr` should be `--client-address` to keep compatible with previous versions.

    Approved-By: lmatz
    Approved-By: huangjw806

commit 4e9756d04853248c0a7fe95da82b2588820cda5e
Author: xxchan <[email protected]>
Date:   Sat Feb 4 08:17:40 2023 +0100

    ci: add github_token for buf-setup-action (#7697)

    Approved-By: tabVersion

commit 05eb37f33a8275237bb268e4cb2932f8f31eb234
Author: xxchan <[email protected]>
Date:   Fri Feb 3 23:55:18 2023 +0100

    feat: implement append-only group TopN (#7522)

    close #7376

    Approved-By: BugenZhao

commit dffc2f145ddf56f359d6484fcaefeefc8e91bf66
Author: Yuanxin Cao <[email protected]>
Date:   Sat Feb 4 00:37:50 2023 +0800

    feat: ensure reserved memory for computing tasks on compute node starting (#7670)

    The total memory of a CN consists of:

    1. computing memory (both stream & batch)
    2. storage memory (block cache, meta cache, etc.)
    3. memory for system usage

    That is to say, we have **_CN total memory_ = _computing memory_ + _storage memory_ + _system memory_**, and both _CN total memory_ and _storage memory_ are configured by the user currently. This PR is to ensure that _computing memory_ and  _system memory_ are correctly reserved,, i.e. **_computing memory_ + _system memory_ = _CN total memory_ - _storage memory_ > a given amount of memory**. We set this "given amount of memory" as 1G for now (512M for computing and 512M for system). The check is performed on CN starting.

    Approved-By: fuyufjh
    Approved-By: hzxa21

commit 20bdb72d5ff015d736fb582918cd551563139273
Author: Bowen <[email protected]>
Date:   Fri Feb 3 19:20:31 2023 +0800

    fix: report local execution mode error (#7454)

    1. Enable local mode error propagation. Now when local mode task (in CN) happens error, it can report to users.
    2. Store sender in TaskExecution, avoid early drop (Otherwise it's possible that the task execution error will become hash shuffle error)

    This pr revert some previous workaround: TODO in sqlsmith, store the sender in task execution

    Approved-By: liurenjie1024

    Co-Authored-By: BowenXiao1999 <[email protected]>
    Co-Authored-By: Bowen <[email protected]>

commit a3306ea51bbb1d390bd49f24edf0ea165388cb0a
Author: xxchan <[email protected]>
Date:   Fri Feb 3 11:40:52 2023 +0100

    feat: don't report error when cancelling `risedev configure` (#7673)

    Also tweak the prompts

    Approved-By: BugenZhao
    Approved-By: TennyZhuang

commit 930b185d1a9cadb06b74a5604bb7a17985786a8a
Author: Shanicky Chen <[email protected]>
Date:   Fri Feb 3 17:34:29 2023 +0800

    feat: refine meta election logic (#7669)

    This PR refine a series of meta election related codes

    1. meta's addr supports multiple addresses
    2. meta client adds a meta address mode parameter to distinguish the behavior of election members found in loadbalance (kubernetes environment) and list (normal environment)

    Approved-By: yezizp2012

commit 496f7a97477bdd6f8882e2fd66c40cb4cec0ee6c
Author: Noel Kwan <[email protected]>
Date:   Fri Feb 3 15:23:56 2023 +0800

    fix(sqlsmith): generate typed null (#7679)

    Approved-By: fuyufjh

commit 50bd4871cbc6e399b8ddf4c2c2f6e96bf1646c99
Author: Eric Fu <[email protected]>
Date:   Fri Feb 3 14:59:58 2023 +0800

    fix: bug of MetaNodeOpts (#7681)

    It seems to be a mistake introduced in #7658

    Approved-By: Gun9niR

commit f1c4558ce5c3593f5b77cf9a7c74b1f5df87422b
Author: zwang28 <[email protected]>
Date:   Fri Feb 3 14:35:40 2023 +0800

    chore(log): suppress unnecessary warning (#7676)

    Change this warning message into a debug message, because it's the expected behavior during backfill. Otherwise it can overwhelm the log stream during a large MV creation.

    Approved-By: wenym1

commit a97e94f327f6cb8e7c6fabb6b346220cc85e0933
Author: Yi Zhang <[email protected]>
Date:   Fri Feb 3 14:12:16 2023 +0800

    feat(ci): add e2e test for iceberg sink (#7631)

    This PR adds e2e tests for iceberg sink in PR & main branch workflows, which includes:
    - setting up the environment (creating a new bucket in hummock-minio with `mcli`, creating an iceberg table with `spark-sql`)
    - running `e2e_test/sink/iceberg_sink.slt`
    - checking the test results (reading from the iceberg table with `spark-sql` and matching the output)

    Approved-By: wenym1
    Approved-By: StrikeW
    Approved-By: tabVersion

commit b720f195aee54287e1be2a5f46b94f60db694d4f
Author: Noel Kwan <[email protected]>
Date:   Fri Feb 3 12:03:46 2023 +0800

    feat(sqlsmith): gen implicit cast (#7629)

    - [x] Gen for fixed func
    - [x] Gen for concat (note that this is implicit cast but in explicit context...)

    Approved-By: lmatz

    Co-Authored-By: Noel Kwan <[email protected]>
    Co-Authored-By: Noel Kwan <[email protected]>

commit 1f6b0630e547a7af46f73326e79f9555514b2544
Author: ioperations <[email protected]>
Date:   Fri Feb 3 11:35:37 2023 +0800

    fix(sqlparser): fix operator precedence between '>=' and 'IN' (#7665)

    Approved-By: kwannoel

    Co-Authored-By: Noel Kwan <[email protected]>
    Co-Authored-By: aodong.qin <[email protected]>
    Co-Authored-By: ioperations <[email protected]>

commit 704cc4fc8c00a9b37da4edd3a56bc750f12a2f78
Author: jon-chuang <[email protected]>
Date:   Fri Feb 3 11:12:45 2023 +0800

    feat(service-params): Rename `host -> listen_addr`, `client_addr -> advertise_addr` (#7530)

    Rename `host -> listen_addr`, `client_addr -> advertise_addr` for clearer meaning of cmdline params.

    Approved-By: CAJan93

    Co-Authored-By: jon-chuang <[email protected]>
    Co-Authored-By: jon-chuang <[email protected]>

commit bb673d4de584dfb97afb5da8f6c1ddf28b157e7d
Author: jon-chuang <[email protected]>
Date:   Fri Feb 3 10:15:13 2023 +0800

    feat(frontend): define `ConstantEvalRewriter`, impl `ExprRewritable` for batch (#7541)

    Next steps:
    - impl for stream nodes

    Depends on: https://github.com/risingwavelabs/risingwave/pull/7542

    Let's remember to enable `now.slt.part` after we enable `ConstantEvalRewriter`.

    Approved-By: chenzl25

commit 99ffb71a49c5973fb3a5edf00b86973380fdb082
Author: Noel Kwan <[email protected]>
Date:   Thu Feb 2 23:59:02 2023 +0800

    fix(sqlsmith): generation of ambiguous `IN` `list` expression (#7672)

    Generate `InList` expression with parenthesis in the prefix argument to avoid ambiguity.

    Approved-By: lmatz

commit 00b0e361eccd57c06d46ae0863130c2a60ea1650
Author: August <[email protected]>
Date:   Thu Feb 2 22:18:53 2023 +0800

    chore(test): minor code refactoring in simulation test (#7666)

    Approved-By: BugenZhao
    Approved-By: wangrunji0408

commit 9fd77215f7d4f9b96dc2ac55473c192521e4f118
Author: ZENOTME <[email protected]>
Date:   Thu Feb 2 20:46:16 2023 +0800

    feat(pgwire):support mix format in extended query mode (#7622)

    as title. Solve the issue #7605 and #7599

    Approved-By: BowenXiao1999
    Approved-By: xiangjinwu

commit 477e30de470a2066d20efb57fe8e3f49a31d51d9
Author: Dylan <[email protected]>
Date:   Thu Feb 2 17:44:31 2023 +0800

    feat(streaming): support delta join on primary table (#7662)

    - Support delta join on primary table, because primary table is also an index as well.

    Approved-By: st1page

commit e9871063fa90fda46fd18dcd560f10b4f629c2fb
Author: Zhidong Guo <[email protected]>
Date:   Thu Feb 2 16:42:58 2023 +0800

    feat(cli): fallback to env if CLI arg is absent (#7658)

    As title.

    All envs will have the prefix of `RW`. Clap does not support prefixing env at the moment, so we have to specify the name manually :hot_face:. Serfig provides this functionality, but it still has the limitation of being unable to override with default value.

    As for backward compatibility, although the env names have changed, the CLI args remain the same.

    Approved-By: fuyufjh

commit 83e7f00172ea828086dfd4101248336b7d755e4f
Author: August <[email protected]>
Date:   Thu Feb 2 16:06:43 2023 +0800

    fix(meta): fix meta_endpoint format when host not provided in playground mode (#7661)

    Fix `meta_endpoint` format when `host` is not provided in playground mode, the endpoint will be wrongly generated as `127.0.0.1:5690:5690`.

    Approved-By: lmatz
    Approved-By: tabVersion
    Approved-By: BugenZhao

commit e7fe72b0dda9379cd42e6e412bbf5a37c69ca9c4
Author: Wallace <[email protected]>
Date:   Thu Feb 2 13:04:58 2023 +0800

    feat(storage): use finer granularity to monitor request latency (#7586)

    We used to thought the iterator latency of state-store could always exceed several hundred microsecond but it is a mistake caused by metrics. In fact, in most case, it is only several micro-seconds

    Approved-By: Li0k

commit df85930b94b385a402905317148746d7a432bf7f
Author: CAJan93 <[email protected]>
Date:   Thu Feb 2 04:54:27 2023 +0100

    feat(docs): Add documentation on how to run RW with debugger (#7652)

    Simple docs on how to run RW locally using a debugger. Hope you find it useful. For me it sometimes helps to step through the code line by line

    Approved-By: lmatz

commit 9b9e0921f8d5de2c0cd504985200b476c5a101cf
Author: waruto <[email protected]>
Date:   Thu Feb 2 09:49:38 2023 +0800

    refactor(source): refine some code of split reader (#7644)

    - move the implementation of `SplitReaderV2` to the readers themselves.

    Approved-By: xx01cyx
    Approved-By: tabVersion

commit 3d9077b07a8318cc0d64b25b904f0e66e1bf5c86
Author: Zhidong Guo <[email protected]>
Date:   Wed Feb 1 22:10:12 2023 +0800

    feat: override config with cli opts (#7613)

    Define a proc macro `OverrideConfig` which will override fields in `RwConfig`. It supports overriding any field in the config file. Its usage is as bellow:

    ```rust
    pub struct ComputeNodeOpts {
    // Other items ...

    #[clap(flatten)]
    override_config: OverrideConfigOpts,
    }

    /// Command-line arguments for compute-node that overrides the config file.
    #[derive(Parser, Clone, Debug, OverrideConfig)]
    struct OverrideConfigOpts {
    #[clap(long)]
    #[override(path = storage.state_store)]
    pub state_store: Option<String>,

    /// Enable reporting tracing information to jaeger.
    #[clap(parse(from_flag), long)]
    #[override(path = streaming.enable_jaeger_tracing)]
    pub enable_jaeger_tracing: Flag,
    }

    fn compute_node_serve(opts: ComputeNodeOpts) {
    // `override_config` should not be usable afterwards
    let config = load_config(&opts.config_path, Some(opts.override_config));
    }
    ```

    I plan to keep only the addresses, hardware-related items and credential-related items in CLI. Thus more options are available in the config file. Please check the release notes.

    This PR keeps backward compatibility, as the newly added fields in the config file can still be overridden from CLI.

    I did not use serfig because it [does not support overriding with default values](https://github.com/Xuanwo/serfig/issues/23#issuecomment-1409809442). The user might not do that, but as risedev users, we might accidentally have modified risingwave.toml and forgot to change it back, which conflicts with the values generated by risedev and causing confusing behaviours 🥵

    Approved-By: fuyufjh
    Approved-By: xxchan

    Co-Authored-By: Gun9niR <[email protected]>
    Co-Authored-By: Zhidong Guo <[email protected]>

commit 17cdbd76b8c06c316f5a0d4d48cd7d875d2fcd8d
Author: Bugen Zhao <[email protected]>
Date:   Wed Feb 1 20:08:04 2023 +0800

    feat(meta): iterative streaming scheduler (part 1) (#7490)

    (as explained in #7420) This PR introduces a brand new streaming scheduler which is done by automatic iteration based on a Datalog syntax. In short, by simply pre-defining some rules, the scheduler can directly derive the distribution (or vnode mapping) for the given fragment graph and fill the exchange with correct dispatchers, without thinking about the topological order or handling edge cases anymore.

    https://github.com/risingwavelabs/risingwave/blob/b5b70668cf275a83b169b0088e3403686173697d/src/meta/src/stream/stream_graph/schedule.rs#L83-L98

    In this PR, we only utilize this new scheduler in parallelism assignment, while the derived distribution itself is ignored. This can be fixed by removing the old scheduler in the next PRs.

    By making the scheduling phase ahead of time, we can also simplify the logic like actor ID assignments, as we're building actors after we know the total count of them.

    Approved-By: chenzl25
    Approved-By: yezizp2012

commit 2eea46208210d95c1975b7ea61f37674b6d2e832
Author: Huangjw <[email protected]>
Date:   Wed Feb 1 19:37:56 2023 +0800

    fix: fix release workflow scripts && update release version in readme (#7649)

    As the title.

    Approved-By: lmatz
    Approved-By: BugenZhao

commit 3b5419f6c6cdaa9b7324211fff71dc1f55907e46
Author: lmatz <[email protected]>
Date:   Wed Feb 1 19:14:06 2023 +0800

    chore: remind contributors to ensure backward compatibility when there are breaking changes (#7607)

    As per the title.

    Have no strong opinion on this.
    Slightly better than nothing.......

    Approved-By: neverchanje

commit 81678aae414e85149f8d6e9bb86315336afb4ba7
Author: CAJan93 <[email protected]>
Date:   Wed Feb 1 11:26:30 2023 +0100

    fix(chore): Change comments in test to ci-3cn-2fe-3meta (#7651)

    Approved-By: yezizp2012
    Approved-By: liurenjie1024

commit 42d2e11c579fd3ec00f28b95170d8a456efb619d
Author: Bohan Zhang <[email protected]>
Date:   Wed Feb 1 17:37:17 2023 +0800

    feat: add ssl/sasl support for kafka sink (#7540)

    as title

    Approved-By: waruto210

commit c42860f959ea8e7f3a15e695cd1642e184b11b69
Author: Liang <[email protected]>
Date:   Wed Feb 1 17:13:56 2023 +0800

    feat(lru cache): add interface `lookup_with_request_dedup` which … (#7456)

    Add interface `lookup_with_request_dedup` which leverages `Tokio::spawn` to avoid await in `LruCache` for storage prefetch purpose.

    Approved-By: Little-Wallace
    Approved-By: wenym1

commit 8e43885db6fadafa058ab8f52ec1481335c57fe0
Author: William Wen <[email protected]>
Date:   Wed Feb 1 16:49:10 2023 +0800

    refactor(storage): remove storage core from local hummock (#7642)

    Currently, in the `LocalHummockStorage`, most of useful fields are inside an inner `HummockStorageCore`, which are wrapped in `Arc` and was intended to be a struct shared in multiple tokio tasks. However, inside the `HummockStorageCore`, there is a `Arc<RwLock<ReadVersion>>`, and this is the real struct that is shared. Therefore, there is no need to wrap the `HummockStorageCore` within `Arc`, and furthermore we can move the fields in `HummockStorageCore` to `LocalHummockStorage` and remove the `HummockStorageCore`.

    We also remove `Clone` from `LocalHummockStorage` in unit tests, and some unit test code are refactored accordingly.

    Approved-By: Li0k

commit be2300d50a976b49da95d99ce2cb0e22e3eb7379
Author: Bowen <[email protected]>
Date:   Wed Feb 1 16:25:57 2023 +0800

    feat: collect stream mem usage (#7180)

    Different from jemalloc version memory stat, this pr tries to add memory stat that only allocated by streaming jobs.

    Goal:
    Collect streaming memory usage and record it as promethues metrics.

    Code Design:
    1. Given that each actor task is wrapped by `allocation_stat`, each task will call `store_mem_usage` and report the actor level memory usage to `ActorContext`. ActorContext need to record the last mem val and current mem val, so it can calculate the diff and apply it to a global variable for collecting all streaming memory usage in `total_mem_val`.
    2. `GlobalMemoryManager` responsible for write the `total_mem_val` as Streaming Metrics in promethues.

    Approved-By: liurenjie1024

commit fcc2ec872635379f8f577a55cd6def4e05bd98e7
Author: congyi wang <[email protected]>
Date:   Wed Feb 1 15:44:36 2023 +0800

    feat(storage): bloom filter hash value xor with table id (#7502)

    To avoid different tables in one sst have same bloom filter key, we can xor hash value with table_id, and thus we don't need to  change  `SstableMeta`.

    Approved-By: Little-Wallace

    Co-Authored-By: congyi <[email protected]>
    Co-Authored-By: congyi wang <[email protected]>

commit 31757b685dde7fd859bfb3cd0cffdc98b823857e
Author: Dylan <[email protected]>
Date:   Wed Feb 1 15:21:16 2023 +0800

    fix(meta): Handle internal tables properly when creating and dropping sink (#7638)

    -  Handle internal tables properly when creating and dropping sink.

    Approved-By: yezizp2012

commit cf2306bb8fbb91dbbd3c1e350d93a0c4aa37c4c2
Author: Dylan <[email protected]>
Date:   Wed Feb 1 14:57:34 2023 +0800

    feat(stream): support and refactor 2 way delta join (#7417)

    We will support delta join in a similar way as distributed lookup join.

    - Schedule stream lookup operator together with the index scan and don't rely on the arrange operator.
    - Use consistent hash shuffle to guide the upstream row to the lookup operator.
    - Change `StreamActor`'s `same_work_node_upstream` to `ColocatedActorId`.
    - Use a storage table instead of a state table to lookup the current and previous epoch data in uncommitted read(NoWait) manner.
    - Change `ChainExecutor` into a pure dispatcher without consuming a snapshot. Delta join only needs one data flow to consume the old snapshot and other data flows should be pure dispatcher.
    - Support a session variable `rw_streaming_enable_delta_join` to control whether enable delta join, default value false.

    Approved-By: fuyufjh
    Approved-By: BugenZhao

    Co-Authored-By: Dylan Chen <[email protected]>
    Co-Authored-By: Dylan <[email protected]>

commit a1a56d7d98f947caa811e8610a82fb65355a1ced
Author: Kiv Chen <[email protected]>
Date:   Tue Jan 31 22:32:45 2023 -0800

    feat(ci): poll-and-wait for connector node boot-up (#7452)

    As the Connector Node becomes heavier, e2e tests may start before the Connector finishes boot-up.

    From this PR on, the e2e sink and source scripts will wait for Connector to become available until the script comes into timeout.

    Approved-By: tabVersion

    Co-Authored-By: Kiv Chen <[email protected]>
    Co-Authored-By: Bohan Zhang <[email protected]>

commit f309b246571a9ec68201d696fbcd5cfd4181519f
Author: Liang <[email protected]>
Date:   Wed Feb 1 13:29:35 2023 +0800

    fix(state store): calculate delete range even if bloom filter negativ… (#7619)

    calculate delete range of an SST even if bloom filter negative in `iter()` in state store

    Approved-By: Little-Wallace

commit 729272474a851ede454fbdfa281efa3dd843dd40
Author: Noel Kwan <[email protected]>
Date:   Wed Feb 1 13:01:35 2023 +0800

    fix(expr): use checked operations for substr (#7634)

    As per title.

    Approved-By: xiangjinwu
    Approved-By: Gun9niR

commit 5938e35c02c2091d165b9fb70107d9399f86a0e0
Author: Noel Kwan <[email protected]>
Date:   Tue Jan 31 21:35:18 2023 +0800

    chore(sqlsmith): disable `FILTER` with correlated input reference (#7624)

    Workaround: https://github.com/risingwavelabs/risingwave/issues/4762

    Approved-By: lmatz

commit 0c15c43f239d6b01813014fa46e8dd554d23dd92
Author: August <[email protected]>
Date:   Tue Jan 31 19:44:12 2023 +0800

    chore: decrease retry interval for recovery, try to speed up recovery (#7627)

    Approved-By: wangrunji0408

commit 1ac6da8c7e0e0da93917f7a1da7dab3cb7ebee33
Author: lmatz <[email protected]>
Date:   Tue Jan 31 19:08:57 2023 +0800

    fix(meta): backward compatible with host when running in mem meta backend (#7628)

    See #7616, the previous pr only changes the etcd backend. It fails when running mem backend.

    Now both etcd backend and mem backend run with the same `meta-endpoint` when `meta-endpoint` is not provided,
    i.e. `format!("{}:{}", meta_addr, listen_addr.port())`

    Approved-By: arkbriar

commit db4f27e56a09d234de074a3acbb43bfea70825af
Author: Bowen <[email protected]>
Date:   Tue Jan 31 17:20:50 2023 +0800

    fix: do not panic when there is None in dml ret stream (#7606)

    It's possible that the chunk stream do not return any data. For example, insert fail.
    We should not panic here.

    From #7454

    Approved-By: BugenZhao
    Approved-By: liurenjie1024

commit 77a9c3733ae318eef03878bd4973c6865eb190f5
Author: Runji Wang <[email protected]>
Date:   Tue Jan 31 16:54:34 2023 +0800

    feat(test): load balancing using DNS and IPVS in simulation (#7580)

    This PR utilizes the new DNS and IPVS feature in madsim to support load balancing in deterministic test.

    As an example, we added a DNS record `frontend -> 192.168.2.0` to the cluster, and a virtual service `192.168.2.0:4566 -> {192.168.2.1:4566, 192.168.2.2:4566, 192.168.2.3:4566}` to each node. We could then connect a frontend using the address `frontend:4566` which will be load balanced to 3 frontend servers.

    This can also be used to simulate k8s services when we have multiple meta services after a few days.

    - [x] The patch for madsim in Cargo.toml will be replaced by new versions once all tests pass.

    Approved-By: BugenZhao

commit 082a4681270bb0621114e0f46ae7d323345bc99c
Author: Runji Wang <[email protected]>
Date:   Tue Jan 31 16:30:15 2023 +0800

    chore(test): move nexmark queries to external file (#7614)

    This PR moves inlined nexmark queries to external file.

    Approved-By: BugenZhao

commit b97dd9f5f069c640eeb76369387b63639f6da5f8
Author: lmatz <[email protected]>
Date:   Tue Jan 31 16:06:17 2023 +0800

    fix(meta): add back host, a deprecated cmd line argument (#7616)

    risingwave-operator made a [temporary fix](https://github.com/risingwavelabs/risingwave-operator/commit/f011c368e0ffc72e615d4717fefbef4650851d2e) with regards to the breaking change that uses `meta-endpoint` instead of `host`, please refer to #7527.
    But the cloud is unable to adopt this change right now, so we add `host` back.

    By looking at the temporary fix, it used to use `IP` as `host` and now uses `IP:PORT` as `meta-endpoint`.
    So this hot fix uses `IP` from `host` and  `PORT` from `listening-addr` to compose `meta-endpoint`, please correct me if I am wrong.

    Approved-By: arkbriar
    Approved-By: jon-chuang

commit 9a4ee148a6083cc3cf85e75d04ec029b1f45067f
Author: Bugen Zhao <[email protected]>
Date:   Tue Jan 31 14:43:59 2023 +0800

    chore: check breaking change in protobuf (#7609)

    This PR adds the workflow of detecting breaking changes in protobuf to the CI workflow. Here is an example of error reporting:
    - https://github.com/risingwavelabs/risingwave/pull/7609/commits/c1dd48e4f4291270ec515886d999dbf8b946b733

    We've set the rule category to `WIRE_JSON` which is explained [here](https://docs.buf.build/breaking/rules). Actually `WIRE` is enough for our major usages, while `WIRE_JSON` ensures that the name of the fields is not modified, which brings less confusion to the codebase and also makes the JSON-based dashboard easier to maintain (e.g., avoid #7262 from happening).

    We may not need to add this workflow to GitHub's branch protection rule until the next release.

    Approved-By: TennyZhuang

commit c52e5505e1d871fbe6646176a27921c7cbdd6435
Author: zwang28 <[email protected]>
Date:   Tue Jan 31 12:51:37 2023 +0800

    chore(log): modify read current epoch error message (#7603)

    The `ReadCurrentEpoch error` only occurs when the cluster is under recovery. This PR emphasizes this fact in error message, because the error message will be read by frontend user.
    When seeing `ReadCurrentEpoch error` constantly, root cause of unsuccessful recovery should be investigated, instead of `ReadCurrentEpoch error` itself.

    Approved-By: lmatz

commit 5b66ffc634c09fbec70450a1725d0f7c4f09fecb
Author: Bowen <[email protected]>
Date:   Tue Jan 31 10:35:23 2023 +0800

    fix: do not panic when there is ssl error (#7588)

    Close #7331

    Do not panic when there is ssl error. in this case, there will be an error log + retry without SSL.

    Approved-By: xxchan

commit bd86d166d0e61d7b0090d11bbc84146a02bbe320
Author: Renjie Liu <[email protected]>
Date:   Tue Jan 31 09:00:33 2023 +0800

    fix(batch): HopWindow executor should work without window_start or window_e d (#7595)

    As title.

    Approved-By: lmatz

commit 702345b5d0292d799451f9b77e0e433df4fa7c5b
Author: Zhidong Guo <[email protected]>
Date:   Tue Jan 31 00:43:40 2023 +0800

    feat(storage): support hummock read plan in java binding (#7253)

    - Add `MetaClient` on java side: use blocking rpc stub for simplicity, use `ScheduledThreadPoolExecutor` to implement heartbeat (not sure if it's the best way though, may need advice from Java expert 🥺)
    - Support querying and pinning hummock version, querying table catalog by table name and db name on java side, and pass it to rust side's hummock API
    - Refine demo
    - fix maven dependency and classpath issues
    - start rw cluster with a new profile in risedev: `java_binding_demo` write data to a demo table, and read it from java demo

    Approved-By: ice1000
    Approved-By: wenym1

    Co-Authored-By: William Wen <[email protected]>
    Co-Authored-By: William Wen <[email protected]>
    Co-Authored-By: Gun9niR <[email protected]>
    Co-Authored-By: Zhidong Guo <[email protected]>

commit 719f55e4ee2a4d18e75f8f8adfc63603a7ab6748
Author: Dylan <[email protected]>
Date:   Mon Jan 30 21:28:39 2023 +0800

    feat(frontend): Describe statement displays the primary key (#7590)

    - `describe` statement displays the primary key.

    Approved-By: yezizp2012

commit 198ca46c3b492e04cdbdef32d8d1a7c55dedfb74
Author: Bugen Zhao <[email protected]>
Date:   Mon Jan 30 19:44:59 2023 +0800

    fix(streaming): remove actor-level exchange metrics (#7584)

    As explained in #7362. Given the parallelism `p`, we'll have `p * p` actor-level metrics for each exchange, whose data is unacceptably large. Let's disable it temporarily.

    Approved-By: StrikeW

commit d1c5d6aeb4d66539f16c3351dd284fe6d20b06e6
Author: Shanicky Chen <[email protected]>
Date:   Mon Jan 30 19:16:55 2023 +0800

    fix(meta): start leader service directly in meta election scenario (#7594)

    If the election client resumes from the leader state, it will start directly from the leader service

    Approved-By: yezizp2012

commit c7adda2bddfe1743685eb6e1a7dbbb15f8716b17
Author: August <[email protected]>
Date:   Mon Jan 30 18:52:26 2023 +0800

    fix: fix retry logic of drop statement in deterministic recovery test (#7592)

    Approved-By: BugenZhao

commit f03b3da66eeae82bc0c1eb7641fa56e6f5bac62c
Author: lmatz <[email protected]>
Date:   Mon Jan 30 18:27:06 2023 +0800

    fix(batch): sum aggregator should use checked_add instead of raw addition to avoid panic (#7587)

    fix #7552, overflow should not panic, we used `checked_add` now to replace the raw `+` op.

    Approved-By: TennyZhuang

commit 9f64e93bace7516f5dcf99fe0ae9f6e3541cce12
Author: jon-chuang <[email protected]>
Date:   Mon Jan 30 17:42:57 2023 +0800

    fix(frontend): `display_for_explain` for `ListValue` (#7571)

    I believe this bug was not caught before: https://github.com/risingwavelabs/risingwave/pull/7541 because Array is treated as a function. But const_eval would force the Array to be evaluated into the List DataType

    Anw, let's fix it as it's clearly a bug. After https://github.com/risingwavelabs/risingwave/pull/7541, the new planner test will be evaluated as an List literal, rather than as FunctionCall as per now.

    Approved-By: st1page

    Co-Authored-By: jon-chuang <[email protected]>
    Co-Authored-By: jon-chuang <[email protected]>

commit 1d2bb32982e3b53489422199604051839e991035
Author: Shanicky Chen <[email protected]>
Date:   Mon Jan 30 16:55:34 2023 +0800

    feat: meta-client with new election mechanism (#7389)

    **This section will be used as the commit message. Please do not leave this empty!**

    This PR is a follow-up to PR #7179

    This PR provides a meta client with an election client, and implements a sidecar rpc client update through the api of `members` and `leader` from LeaderService

    But this also introduces a mutex, all meta client operations need to hold this lock

    Approved-By: yezizp2012

commit 5e3070d06ee115911d4739bc146a91c72f0ecee0
Author: Bowen <[email protected]>
Date:   Mon Jan 30 16:28:35 2023 +0800

    chore: remove unnecessary println (#7585)

    Brought by previous pr, should remove it.

    Approved-By: BugenZhao

commit da8fda33ce8b3f6ac4744152fe97f9b8ad3a170b
Author: waruto <[email protected]>
Date:   Mon Jan 30 16:02:58 2023 +0800

    refactor(source): migrate all parsers and readers to the new stream based trait (#7508)

    - migrate all parsers/readers to the new stream based trait

    Approved-By: tabVersion

commit c72c8880c628706fd0062f934200d93dedb78eac
Author: Bowen <[email protected]>
Date:   Mon Jan 30 14:11:07 2023 +0800

    feat: support multiple stmts in one run (simple query) (#6849)

    Test locally.

    Approved-By: ZENOTME

commit 4c31cc71a510f6dd7808d0ee81080a64e3301e17
Author: Bugen Zhao <[email protected]>
Date:   Mon Jan 30 12:26:20 2023 +0800

    fix(expr): handle time operation out of range (#7568)

    Handle the potential "out of range" panics in time operations as careful as possible.

    Approved-By: wangrunji0408

commit 39aaa75c70c8992ba2553a533c674d4f33c97453
Author: TennyZhuang <[email protected]>
Date:   Mon Jan 30 11:52:48 2023 +0800

    fix(expr): overlay panic on overflow (#7575)

    Use `checked_sub`.

    Approved-By: kwannoel

commit e680ae70bd6740bdd3413d375e47b88bc1c2f80a
Author: jon-chuang <[email protected]>
Date:   Mon Jan 30 10:53:41 2023 +0800

    fix(meta): Temporarily fix breakage of playground due to missing --host arg (#7572)

    We may rename the args again, but let's stop the breakage due to missing playground arg changes due to https://github.com/risingwavelabs/risingwave/pull/7527...

    Approved-By: huangjw806

commit 7b0f2d21d278013faca232d399d0366352b240e0
Author: TennyZhuang <[email protected]>
Date:   Sun Jan 29 19:49:20 2023 +0800

    chore: update copyright-owner to RisingWave Labs (#7570)

    update copyright-owner to RisingWave Labs

    Approved-By: yuhao-su

commit 75a5caca3608cee232e9682aabc99c215de3de8b
Author: jon-chuang <[email protected]>
Date:   Sun Jan 29 17:33:20 2023 +0800

    feat(frontend): Impl `ExprRewritable` for `Logical` and `generic` Nodes (#7542)

    Impl `ExprRewritable` for `Logical` and `generic` Nodes

    Approved-By: chenzl25

    Co-Authored-By: jon-chuang <[email protected]>
    Co-Authored-By: jon-chuang <[email protected]>

commit dae43cc8c689c9cfb5f0ada83c51a12e964f72d2
Author: zwang28 <[email protected]>
Date:   Sun Jan 29 16:46:50 2023 +0800

    refactor(meta): refactor CREATE_COMPACTION_GROUP_FOR_MV (#7567)

    When CREATE_COMPACTION_GROUP_FOR_MV is true:

    - Before this PR, all tables of a stream job will be assigned their own new compaction groups. This is unnecessary, especially for small tables.
    - With this PR, all tables of a stream job will be assigned one same new compaction group.

    Approved-By: soundOfDestiny

    Co-Authored-By: zwang28 <[email protected]>
    Co-Authored-By: zwang28 <[email protected]>

commit 808bc59fe9fdba6fe8c84ba7f5bb2a2cd9883501
Author: waruto <[email protected]>
Date:   Sun Jan 29 16:03:33 2023 +0800

    feat(source): support match_pattern for s3 enumerator (#7565)

    Approved-By: tabVersion

commit fb09aa9003f26dd0d7897597bb03b1f2fc651fcf
Author: ZENOTME <[email protected]>
Date:   Sun Jan 29 13:42:46 2023 +0800

    fix(frontend): remove alias check (#7562)

    In the old version, we guarantee every column with a alias name, these behaviour caused the bug #7549.

    ### And why we have this guarantee:
    At that time, function didn't have a alias, to guarantee every function column have a column name, we enforce the user must specify column alias.(A rude solution) https://github.com/risingwavelabs/risingwave/pull/6798

    But now, we can derive function alias so that I think we can remove the alias check.

    After remove it, our behaviour will be compatiable with postgres:

    ```
    test_db=> create table t1 as select 1;
    SELECT 1
    test_db=> select * from t1;
    ?column?
    ----------
    1
    (1 row)

    test_db=> create table t as select 1,2,3;
    ERROR:  column "?column?" specified more than once

    test_db=> create table t as select 1 as a , 2 as b;
    SELECT 1
    test_db=> select * from t;
    a | b
    ---+---
    1 | 2
    (1 row)

    ```

    Approved-By: st1page

commit 9896f9a800ba9a5e68345d6c21654c854180727d
Author: Li0k <[email protected]>
Date:   Sat Jan 28 22:32:36 2023 +0800

    refactor(storage): refactor compactor context to make code more readable (#7494)

    as title

    **This section will be used as the commit message. Please do not leave this empty!**

    Please explain **IN DETAIL** what the changes are in this PR and why they are needed:

    - Summarize your change (**mandatory**)
    - How does this PR work? Need a brief introduction for the changed logic (optional)
    - Describe clearly one logical change and avoid lazy messages (optional)
    - Describe any limitations of the current code (optional)

    Approved-By: Little-Wallace

commit 3a9f418e813705a8a64ac884c72d861dc39d8a9b
Author: Bugen Zhao <[email protected]>
Date:   Sat Jan 28 17:23:18 2023 +0800

    fix(test): handle `RETURNING` correctly in recovery test (#7483)

    We also need to match `Record::Query` for DMLs.

    In this PR, we also
    - skip `FLUSH` as we always enable `IMPLICIT_FLUSH`,
    - only forward logs to the file and print the test case file name in the console.

    After #7470 gets merged, we should be able to enable `dml_returning.slt.part`.

    Approved-By: wangrunji0408

commit 3767daf647bdfb9272dc784c032003bb9abada76
Author: TennyZhuang <[email protected]>
Date:   Sat Jan 28 16:57:32 2023 +0800

    feat(binder): hint similar candidates when function is unknown (#7521)

    When a known function is called, we'll try to find a similar builtin scalar function and hint it in the error message.

    <img width="1286" alt="image" src="https://user-images.githubusercontent.com/9161438/214260809-26b3a321-393b-45ef-a42c-a14d8a0a080b.png">

    Approved-By: xxchan
    Approved-By: BowenXiao1999

commit 6a1be40ccc3d5cf203080395c66b9364fd9312a7
Author: TennyZhuang <[email protected]>
Date:   Sat Jan 28 16:17:27 2023 +0800

    refactor(stream): introduce `Successor` to refine `SortBuffer` (#7550)

    1. introduce `Successor` trait
    2. refactor `SortBuffer` to use `Successor`

    Approved-By: st1page
    Approved-By: BugenZhao

commit 5e860b0264c1e157dbfdf0432e9cc8080d53b33d
Author: jon-chuang <[email protected]>
Date:   Sat Jan 28 15:50:04 2023 +0800

    fix(frontend): Output indices for general unnesting (#7507)

    We did not reorder join output columns based on join type and which side the apply is translated to, so we fix this.

    We also fix some previous bugs.

    Approved-By: chenzl25

    Co-Authored-By: jon-chuang <[email protected]>
    Co-Authored-By: jon-chuang <[email protected]>

commit 6c34da7dc9c6e2c1af2ab534c857c3109de6c829
Author: Bugen Zhao <[email protected]>
Date:   Sat Jan 28 15:19:25 2023 +0800

    refactor: encapsulated vnode mapping struct (#7505)

    This PR introduces an encapsulated structure for `VnodeMapping`, which uses the compressed format which can be efficiently converted into/from the protobuf representation, and can be indexed with logarithmic complexity. See `src/common/src/hash/consistent_hash/mapping.rs` for more details.

    This PR also distinguishes `pb::ParallelUnitMapping` from `pb::FragmentParallelUnitMapping`. The notification requires a single message which contains the key and value, so we previously put the fragment ID into the `pb::ParallelUnitMapping`, while the `pb::Fragment.vnode_mapping` also contains the fragment ID which makes no sense.

    Approved-By: xx01cyx
    Approved-By: yezizp2012

commit 60ace2420e606de0755774e4f1824e9095b77254
Author: Yuhao Su <[email protected]>
Date:   Sat Jan 28 12:49:40 2023 +0800

    feat: dedup input pk in join key (#7557)

    The input pk may contains the same key from the join key. In this case we can remove those key from input pk.

    Approved-By: st1page

commit 0a809289c7d74a622d64697d75fcbfcfac750fb9
Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Date:   Sat Jan 28 09:55:37 2023 +0800

    chore(deps): bump ua-parser-js from 0.7.31 to 0.7.33 in /dashboard (#7553)

    Bumps [ua-parser-js](https://github.com/faisalman/ua-parser-js) from 0.7.31 to 0.7.33.
    - [Release notes](https://github.com/faisalman/ua-parser-js/releases)
    - [Changelog](https://github.com/faisalman/ua-parser-js/blob/master/changelog.md)
    - [Commits](https://github.com/faisalman/ua-parser-js/compare/0.7.31...0.7.33)

    ---
    updated-dependencies:
    - dependency-name: ua-parser-js
      dependency-type: indirect
    ...

    Signed-off-by: dependabot[bot] <[email protected]>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>

commit 7c2e0891029a8379dab79bdecd43359f367dc640
Author: xxchan <[email protected]>
Date:   Sat Jan 28 02:52:26 2023 +0100

    chore: use cargo-binstall to install tools (#7554)

    to make it faster

    Approved-By: TennyZhuang

commit b410eb2d91881cbaa6260a20ee6400bee979dfd1
Author: Shuxian Wang <[email protected]>
Date:   Fri Jan 27 02:42:51 2023 -0800

    feat(frontend): Support for shared views. (#7432)

    Non materialized views are now labeled as `LogicalShare` nodes in the `Binder`.
    Support the "Share view" task in https://github.com/risingwavelabs/risingwave/issues/6955#issue-1502542081.

    Approved-By: chenzl25

    Co-Authored-By: Shuxian Wang <[email protected]>
    Co-Authored-By: Dylan <[email protected]>

commit 849ffb803a1977db1b54534ada1b256ed9d4b392
Author: jon-chuang <[email protected]>
Date:   Fri Jan 27 13:09:08 2023 +0800

    feat(e2e-testing): More tests for `TemporalFilter` (#7547)

    More tests

    Approved-By: soundOfDestiny

commit 22159ec50787e8f8c531ef09366538e080f8f0ba
Author: Noel Kwan <[email protected]>
Date:   Fri Jan 27 11:01:27 2023 +0800

    feat(sqlsmith): generate dynamic boolean expressions (#7529)

    - Generate `InList`
    - Generate `InSubquery`
    - Generate `FILTER`, `ORDER BY` clauses for aggregate functions.
    - Enable generating negative numbers.
    - Improve error logs for round trip parsing.
    - Cleanup some `TODOs`.

    Approved-By: lmatz

    Co-Authored-By: Noel Kwan <[email protected]>
    Co-Authored-By: Noel Kwan <[email protected]>

commit b7ebdd17e18d99f0aafe0bd39d25c4050c6d5752
Author: Kexiang Wang <[email protected]>
Date:   Thu Jan 26 11:52:03 2023 -0500

    fix(metrics): fix cache miss when insert (#7536)

    fix the `cache miss when insert`'s legend of grafana panel.

    Approved-By: yufansong

commit 2bdab894e4f3fcecd3287b703926c6f21146a7e0
Author: jon-chuang <[email protected]>
Date:   Thu Jan 26 23:58:36 2023 +0800

    fix(frontend): `now` fragment should be singleton (#7544)

    `now` fragment was not singleton

    Approved-By: soundOfDestiny

    Co-Authored-By: jon-chuang <[email protected]>
    Co-Authored-By: TennyZhuang <[email protected]>

commit ee9a41c0d70f02af0dd741aecf002fd9e7a0c805
Author: xxchan <[email protected]>
Date:   Thu Jan 26 16:32:53 2023 +0100

    ci: remove mergify priority (#7545)

commit e88604f34b60e39a383ca2fdaed71a5c3cd8a582
Author: jon-chuang <[email protected]>
Date:   Thu Jan 26 17:49:48 2023 +0800

    feat(service-params): add comments for `--state-store` params for `compute-node`, `compactor-node` (#7537)

    Make it known to the users what are valid params

    Approved-By: CAJan93

    Co-Authored-By: jon-chuang <[email protected]>
    Co-Authored-By: jon-chuang <[email protected]>

commit 9a96b27fd8b58a4183a3170507fee293f4df412d
Author: Bohan Zhang <[email protected]>
Date:   Thu Jan 26 15:46:40 2023 +0800

    refactor: extract common abstractions for each connector (#7528)

    Approved-By: waruto210

commit d4193889af95cfbceeb5232f60ef96134fd567da
Author: Bohan Zhang <[email protected]>
Date:   Thu Jan 26 15:15:41 2023 +0800

    fix: move install mysql-client to ci image (#7539)

    fix main

    aca70301a066b29f133a0ca205bb85e89a237a1c

    Approved-By: jon-chuang

commit aca70301a066b29f133a0ca205bb85e89a237a1c
Author: Kexiang Wang <[email protected]>
Date:   Wed Jan 25 22:44:12 2023 -0500

    fix(metrics): fix bloom filter count (#7535)

    1. The current `read_req_bloom_filter_positive_counts` metric is actually recording the counts of `read_req_bloom_filter_true_positive_counts`.
    2. `state_store_read_req_positive_but_non_exist_counts` is named as "true positive"
    This PR fixed them.

    Approved-By: TennyZhuang

commit 71f7ce71e643b05b934d123b70fbcf3501c059e4
Author: CAJan93 <[email protected]>
Date:   Wed Jan 25 15:10:55 2023 +0100

    fix(chore): Echo correct setup during sim tests (#7532)

    We are using 2 frontend notes by default and not 1 (see [simulation tests args](https://github.com/risingwavelabs/risingwave/blob/8d99f7aedf86d7a3a43eed075c163afee6d1298e/src/tests/simulation/src/main.rs#L43)). Updating echo to reflect that.

    Approved-By: wangrunji0408

commit 8d99f7aedf86d7a3a43eed075c163afee6d1298e
Author: lmatz <[email protected]>
Date:   Wed Jan 25 19:14:06 2023 +0800

    feat(parser): allow one extra comma at the end of With clause (#7513)

    As per the title, #7267, not in the standard, but RW's column definition in the `create` statement also allows it. https://github.com/risingwavelabs/risingwave/blob/main/src/sqlparser/src/parser.rs#L1891

    It works more smoothly for commenting out the last line sometimes.

    Approved-By: tabVersion

commit 511022c3e5b4ea9da4122036ea102f016ee37b34
Author: Bohan Zhang <[email protected]>
Date:   Wed Jan 25 18:49:22 2023 +0800

    feat: allow non txn kafka sink (#7500)

    as title, add an option to allow non-txn when writing kafka

    Approved-By: lmatz

commit e38983574792aa9924a17e71f5eca0ff430eab26
Author: jon-chuang <[email protected]>
Date:   Wed Jan 25 15:00:51 2023 +0800

    fix(meta): Meta node should be identified by its `meta_endpoint` parameter for cluster membership (#7527)

    Meta node should be identified by its `meta_endpoint` parameter. Previously, this defaults to the `listen_addr`. The purpose of `meta_endpoint` is to serve as a unique identifier for cluster membership and for leadership election and connecting to leader.

    Approved-By: shanicky

commit d6182f8970245f09e444395482273910770a54ab
Author: Bohan Zhang <[email protected]>
Date:   Wed Jan 25 14:00:52 2023 +0800

    chore: remove explain create source (#7525)

    as title

    Approved-By: jon-chuang

commit d59148bc4bae9405621238f015887451ce334d41
Author: Yuanxin Cao <[email protected]>
Date:   Wed Jan 25 11:50:30 2023 +0800

    fix(parser): fix error message for create table with connector (#7524)

    As title.

    Approved-By: tabVersion

commit 3f75c4994f24009e1b14bf3eb21559771a53d540
Author: Bugen Zhao <[email protected]>
Date:   Tue Jan 24 18:15:51 2023 +0800

    fix(ci): check whether the playground can start in docker build (#7520)

    Correctly check whether the playground can start with `playground` target. Will sleep for 10 secs then check the status.

    * Previous failure: https://buildkite.com/risingwavelabs/docker/builds/13298
    * Current PR: https://buildkite.com/risingwavelabs/docker/builds/13301

    This PR also
    - remove unused SIMD-related stuff as we do not support non-SIMD after https://github.com/risingwavelabs/risingwave/pull/7259,
    - change `println` to `tracing` in `resource_util`.

    Approved-By: xxchan

commit 96888514c365a29529fbe35dde37ab19dbdb9703
Author: xxchan <[email protected]>
Date:   Tue Jan 24 09:11:39 2023 +0100

    fix: remove outdated comment (#7517)

    Approved-By: xx01cyx

commit 2c061ea397bc5a30a68ac8911aefb99f7a44435d
Author: Tesla Zhang‮ <[email protected]>
Date:   Sun Jan 22 19:26:15 2023 -0500

    chore(memory_management): move to local imports (#7509)

    * fmt

    * Remove

commit f3ec73dcf13d9345e15bcbc37001654e6b591392
Author: TennyZhuang <[email protected]>
Date:   Sun Jan 22 23:46:12 2023 +0800

    ci: upgrade actions/checkout to v3 (#7511)

    upgrade actions/checkout to v3

    > ANNOTATIONS
    > ! Node.js 12 actions are deprecated. Please update the following actions to use Node.js 16: actions/checkout@v2. For more information see: https://github.blog/changelog/2022-09-22-github-actions-all-actions-will-begin-running-on-node16-instead-of-node12/.

    Approved-By: yuhao-su

commit 53a9940410eda92efb399aedb900ac91c3070a60
Author: stonepage <[email protected]>
Date:   Fri Jan 20 17:45:44 2023 +0800

    refactor(frontend): refine handle create table (#7503)

    - remove `DMLFlag` which is just the workaround for materialzied source
    - return error when user want create a table with pk constrain and append_only property at the same time

    Approved-By: BugenZhao

commit da83a65a22cc25cdc44f81c318fddf211d3bbb9c
Author: jon-chuang <[email protected]>
Date:   Fri Jan 20 15:32:32 2023 +0800

    feat(frontend): Reorder cmp expressions and require `now()` lower bound for `TemporalFilter` (#7497)

    Reorder cmp expressions and require now lower bound for `TemporalFilter`

    Approved-By: soundOfDestiny

    Co-Authored-By: jon-chuang <[email protected]>
    Co-Authored-By: Liang Zhao <[email protected]>

commit 2e28fd39462ad56ff4676224db4b51246228fe0b
Author: Yuanxin Cao <[email protected]>
Date:   Fri Jan 20 13:52:19 2023 +0800

    chore: rename `TableSource` to `TableDmlHandle` (#7496)

    As title.

    Approved-By: TennyZhuang
    Approved-By: st1page

commit 915b3932741417de1540d218f5700b0ec8d93f23
Author: jon-chuang <[email protected]>
Date:   Fri Jan 20 10:37:45 2023 +0800

    feat(frontend): Refactor `TemporalFilter` derivation (#7374)

    Refactor temporal filter derivation into logical-phase transformation of filter with now into a left semi-join, later to be derived into dynamicfilter, introduce `LogicalNow`

    We also fix an uncaught bug I think - previously, `StreamNow` would not derive broadcast in the plan.

    Approved-By: st1page

    Co-Authored-By: jon-chuang <[email protected]>
    Co-Authored-By: Liang Zhao <[email protected]>

commit e1ec750e34e8b09142607ed84ef8d84bbe064f98
Author: jon-chuang <[email protected]>
Date:   Fri Jan 20 10:02:22 2023 +0800

    feat(frontend): Remove duplicated expressions in `PushCalculationOfJoinRule` (#7400)

    Previously, unnecessary expressions are duplicated in `PushCalculationOfJoinRule`, in a way that is not possible to prune.

    (DynamicFilter case was actually not affected as the RHS col would be pruned away regardless, but we manage to fix some other cases).

    Approved-By: st1page

commit 74e5d151c30327ab200b827f40cd038d3f4de7f8
Author: waruto <[email protected]>
Date:   Fri Jan 20 00:14:54 2023 +0800

    refactor(source): refactor some code of source (#7493)

    **This section will be used as the commit message. Please do not leave this empty!**

    - refactor `FsSourceExecutor`, make it more unified with `SourceExecutor`.
    - add `SourceMetric` statistics for s3 reader.
    - rename some V2 structs
    - refine some code

    Approved-By: TennyZhuang
    Approved-By: tabVersion

commit 4f8e7cf74b9218f7eef737270b660217248dd685
Author: TennyZhuang <[email protected]>
Date:   Thu Jan 19 23:42:11 2023 +0800

    chore(pr-template): use html comments in main section (#7495)

    We'll extract the content of the main section as the commit message, so if the PR author doesn't remove the hints, the commit message will be very verbose and confusing.

    [Mergify's doc](https://docs.mergify.com/configuration/#template) said that they would strip the HTML comments in the section, so it's better to use comments here.

    > By default, the HTML comments are stripped from body. To get the full body, you can use the body_raw attribute.

    Approved-By: lmatz
    Approved-By: BugenZhao

commit c6ee30d7e2ce5878ee1d65f8bf9b96c30168e46e
Author: congyi wang <[email protected]>
Date:   Thu Jan 19 17:58:16 2023 +0800

    chore(test): remove some outdated tests in relational table (#7488)

    **This section will be used as the commit message. Please do not leave this empty!**

    These tests are duplicated and outdated, their test logic is already covered by others.
    It's hard to move `test_storage_table.rs` outside streaming crate as it need to write by StateTable.

    Approved-By: st1page
    Approved-By: hzxa21

commit de6076696f05d0a8ab386b08013848c33188d10b
Author: Bohan Zhang <[email protected]>
Date:   Thu Jan 19 17:23:41 2023 +0800

    chore: add netcat dep in docker (#7485)

    **This section will be used as the commit message. Please do not leave this empty!**

    as title

    Approved-By: BugenZhao
    Approved-By: TennyZhuang

    Co-Authored-By: tabVersion <[email protected]>
    Co-Authored-By: TennyZhuang <[email protected]>

commit f2eb3172e0d9bdb65eb41bcde6874b90244173c6
Author: TennyZhuang <[email protected]>
Date:   Thu Jan 19 16:54:05 2023 +0800

    chore(deps): fix hakari generated toml (#7487)

    Signed-off-by: TennyZhuang <[email protected]>

    Signed-off-by: TennyZhuang <[email protected]>

commit 93dc5f89d3017f903a59a721b8c251a0705efd24
Author: TennyZhuang <[email protected]>
Date:   Thu Jan 19 16:16:38 2023 +0800

    chore(deps): fix lock conflicts (#7486)

    Signed-off-by: TennyZhuang <[email protected]>

    Signed-off-by: TennyZhuang <[email protected]>

commit 51a1e7479c220a68167d3271df1e942c6f604d96
Author: August <[email protected]>
Date:   Thu Jan 19 16:10:27 2023 +0800

    chore: decrease test num of recovery test in main workflow (#7484)

    chore: decrease test num of recovery test for main workflow

    Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>

commit d7d7bbe18845f81ba86a4399bb22345ea5ee2acd
Author: TennyZhuang <[email protected]>
Date:   Thu Jan 19 16:09:26 2023 +0800

    chore(deps): bump deps to fix several security issues (#7475)

    * build(deps): bump deps to fix several security issues

    Signed-off-by: TennyZhuang <[email protected]>

    * haruki

    Signed-off-by: TennyZhuang <[email protected]>

    * cargo sort

    Signed-off-by: TennyZhuang <[email protected]>

    * fix hakari

    Signed-off-by: TennyZhuang <[email protected]>

    Signed-off-by: TennyZhuang <[email protected]>

commit e0a1cb5443a9afc6e6aff6026a5505162efd75ca
Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Date:   Thu Jan 19 16:08:41 2023 +0800

    chore(deps): bump checkstyle from 8.14 to 8.29 in /src/java_binding/java (#7476)

    Bumps [checkstyle](https://github.com/checkstyle/checkstyle) from 8.14 to 8.29.
    - [Release notes](https://github.com/checkstyle/checkstyle/releases)
    - [Commits](https://github.com/checkstyle/checkstyle/compare/checkstyle-8.14...checkstyle-8.29)

    ---
    updated-dependencies:
    - dependency-name: com.puppycrawl.tools:checkstyle
      dependency-type: direct:production
    ...

    Signed-off-by: dependabot[bot] <[email protected]>

    Signed-off-by: dependabot[bot] <[email protected]>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>

commit 1194333b9ddf657301a9eebb851ce2ef03aab15a
Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Date:   Thu Jan 19 16:08:23 2023 +0800

    chore(deps): bump d3-color and recharts in /dashboard (#7477)

    Bumps [d3-color](https://github.com/d3/d3-color) to 3.1.0 and updates ancestor dependency [recharts](https://github.com/recharts/recharts). These dependencies need to be updated together.

    Updates `d3-color` from 2.0.0 to 3.1.0
    - [Release notes](https://github.com/d3/d3-color/releases)
    - [Commits](https://github.com/d3/d3-color/compare/v2.0.0...v3.1.0)

    Updates `recharts` from 2.1.16 to 2.3.2
    - [Release notes](https://github.com/recharts/recharts/releases)
    - [Changelog](https://github.com/recharts/recharts/blob/master/CHANGELOG.md)
    - [Commits](https://github.com/recharts/recharts/compare/v2.1.16...v2.3.2)

    ---
    updated-dependencies:
    - dependency-name: d3-color
      dependency-type: indirect
    - dependency-name: recharts
      dependency-type: direct:production
    ...

    Signed-off-by: dependabot[bot] <[email protected]>

    Signed-off-by: dependabot[bot] <[email protected]>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>

commit f96fd80bb7f691ec4f607e828dd908964eeb1505
Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Date:   Thu Jan 19 16:08:08 2023 +0800

    chore(deps-dev): bump junit from 4.11 to 4.13.1 in /src/java_binding/java/java-binding (#7478)

    chore(deps-dev): bump junit in /src/java_binding/java/java-binding

    Bumps [junit](https://github.com/junit-team/junit4) from 4.11 to 4.13.1.
    - [Release notes](https://github.com/junit-team/junit4/releases)
    - [Changelog](https://github.com/junit-team/junit4/blob/main/doc/ReleaseNotes4.11.md)
    - [Commits](https://github.com/junit-team/junit4/compare/r4.11...r4.13.1)

    ---
    updated-dependencies:
    - dependency-name: junit:junit
      dependency-type: direct:development
    ...

    Signed-off-by: dependabot[bot] <[email protected]>

    Signed-off-by: dependabot[bot] <[email protected]>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>

commit 49a98331b7dc0ade31af02e67c86752d08e329bf
Author: Runji Wang <[email protected]>
Date:   Thu Jan 19 16:07:53 2023 +0800

    chore(deps): switch arrow to crates.io version (#7480)

    * fix loading `RUST_LOG` in simulation

    Signed-off-by: Runji Wang <[email protected]>

    * switch arrow to crates.io version

    Signed-off-by: Runji Wang <[email protected]>

    Signed-off-by: Runji Wang <[email protected]>

commit 1a1522f6a13de7f2176b1bdc879a1734798702d9
Author: Bugen Zhao <[email protected]>
Date:   Thu Jan 19 14:55:11 2023 +0800

    fix(pgwire): run callback before responsing complete (#7470)

    This PR adds a new field of `callback` in the pgwire, which will be called after the `values_stream` is finished and before sending `ResponseComplete`. This is used for...
    - do `FLUSH` if implicit flush is set
    - record metrics for total query latency

    I've not found a better way to achieve this than manually calling the callback, some other attempts:
    - Put the execution of the callback in the stream. However, we don't even poll the stream, which is assumed to be empty, for some statement types, so we may fail to execute the callback.
    - `spawn` and execute it in `Drop` of `PgResponse`. This is asynchronous and it's possible that a new query comes before the callback is executed, so `flush` will be problematic.

    ~~This PR also enables the `dml_returning.slt` test.~~

    Approved-By: TennyZhuang
    Approved-By: BowenXiao1999
    Approved-By: ZENOTME
    Approved-By: Gun9niR

commit 6ab02a3394d9d6ccecd16871ecf50e421bbd88ac
Author: TennyZhuang <[email protected]>
Date:   Thu Jan 19 14:29:42 2023 +0800

    build(*): bump toolchain to 2023-01-18 (#7482)

    * build(toolchain): bump toolchain to 2023-01-18

    Signed-off-by: TennyZhuang <[email protected]>

    * revert deps

    Signed-off-by: TennyZhuang <[email protected]>

    * update futures-async-stream

    Signed-off-by: TennyZhuang <[email protected]>

    Signed-off-by: TennyZhuang <[email protected]>

commit 8de8c1d22b23b8a0f059154d845f920c761a4014
Author: Yuanxin Cao <[email protected]>
Date:   Thu Jan 19 12:13:05 2023 +0800

    chore: rename v2 structs and methods for source (#7464)

    - Rename `SourceExecutorV2` to `SourceExecutor`.
    - Remove the old `TableSource::stream_reader` and `TableStreamReader::into_stream` methods because they are no longer used.
    - **Make the new `TableStreamReader::into_stream` return `StreamChunkWithState` instead of `StreamChunk`.**

    Approved-By: lmatz
    Approved-By: st1page
    Approved-By: tabVersion
    Approved-By: BugenZhao
    Approved-By: waruto210

    Co-Authored-By: xx01cyx <[email protected]>
    Co-Authored-By: st1page <[email protected]>

commit 252f72ee56ec1a215ee62e68834540747fa9c44e
Author: TennyZhuang <[email protected]>
Date:   Thu Jan 19 10:37:09 2023 +0800

    chore(*): clear rest "singularity" in codebase (#7471)

    As title

    Approved-By: lmatz
    Approved-By: yezizp2012

comm…
@ZENOTME
Copy link
Contributor Author

ZENOTME commented Feb 7, 2023

Solved by #7581

@ZENOTME ZENOTME closed this as completed Feb 7, 2023
Little-Wallace added a commit to Little-Wallace/risingwave that referenced this issue Feb 8, 2023
commit 61afe87
Author: Little-Wallace <[email protected]>
Date:   Tue Feb 7 13:06:38 2023 +0800

    fix conflict

    Signed-off-by: Little-Wallace <[email protected]>

commit 5397385
Merge: 0f7bfa2 1193d53
Author: Wallace <[email protected]>
Date:   Tue Feb 7 12:23:46 2023 +0800

    Merge branch 'main' into refactor-bloom-filter

commit 1193d53
Author: August <[email protected]>
Date:   Mon Feb 6 22:30:07 2023 +0800

    fix: grant default CONNECT action for new created user (risingwavelabs#7716)

    To fix risingwavelabs#7596 , since we don't have concept of PUBLIC group yet, for newly create user, this PR will simply grant CONNECT action of the current database in session. Note that, like PostgreSQL we still need to grant other actions for new user, so that he can do more operation rather than just connect.
    ```sql
    ~ psql -h localhost -p 4566 -d dev -U root
    psql (14.5 (Homebrew), server 9.5.0)
    SSL connection (protocol: TLSv1.3, cipher: TLS_AES_256_GCM_SHA384, bits: 256, compression: off)
    Type "help" for help.

    dev=> create table a (v1 integer);
    CREATE_TABLE
    dev=> create user xxx with password 'abc';
    CREATE_USER
    dev=> \q
    ~ psql -h localhost -p 4566 -d dev -U xxx
    Password for user xxx:
    psql (14.5 (Homebrew), server 9.5.0)
    SSL connection (protocol: TLSv1.3, cipher: TLS_AES_256_GCM_SHA384, bits: 256, compression: off)
    Type "help" for help.

    dev=> select * from a;
    ERROR:  QueryError: Permission denied: Do not have the privilege
    dev=> \q
    ~ psql -h localhost -p 4566 -d dev -U root
    psql (14.5 (Homebrew), server 9.5.0)
    SSL connection (protocol: TLSv1.3, cipher: TLS_AES_256_GCM_SHA384, bits: 256, compression: off)
    Type "help" for help.

    dev=> create materialized view mv1 as select * from a;
    CREATE_MATERIALIZED_VIEW
    dev=> grant all on materialized view mv1 to xxx;
    GRANT_PRIVILEGE
    dev=> insert into a values (1),(2),(3);
    INSERT 0 3
    dev=> \q
    ~ psql -h localhost -p 4566 -d dev -U xxx
    Password for user xxx:
    psql (14.5 (Homebrew), server 9.5.0)
    SSL connection (protocol: TLSv1.3, cipher: TLS_AES_256_GCM_SHA384, bits: 256, compression: off)
    Type "help" for help.

    dev=> select * from mv1;
    v1
    ----
    3
    2
    1
    (3 rows)
    ```

    Approved-By: chenzl25
    Approved-By: xxchan

commit 4f54a70
Author: Noel Kwan <[email protected]>
Date:   Mon Feb 6 21:25:11 2023 +0800

    chore(sqlsmith): reduce query complexity (risingwavelabs#7709)

    - Avoid generating so many `GROUP BY` and cross joins.
    - Reduce probability of generating `WITH` CTE.

    Approved-By: lmatz

    Co-Authored-By: Noel Kwan <[email protected]>
    Co-Authored-By: Noel Kwan <[email protected]>

commit b205308
Author: Eric Fu <[email protected]>
Date:   Mon Feb 6 20:11:18 2023 +0800

    fix: revert 7690 and redesign for CI pipeline (risingwavelabs#7721)

    risingwavelabs#7690 doesn't work for CI pipelines because BuildKite only checks out the sources without `.git`.

    Approved-By: huangjw806
    Approved-By: wangrunji0408

commit 261c914
Author: zwang28 <[email protected]>
Date:   Mon Feb 6 18:44:13 2023 +0800

    fix(meta): unpin snapshot on MV creation failure (risingwavelabs#7707)

    Fix risingwavelabs#7657.

    We know MV creation failure will either trigger a recovery, or trigger a meta panic if enable_recovery is false.
    - For the former case, this PR unpins all snapshot owned by meta node, before recovery starts.
    - For the latter case, hummock manager is already made to unpin all snapshot owned by meta node during initialization.

    Approved-By: BugenZhao
    Approved-By: yezizp2012

commit 3b38db2
Author: ioperations <[email protected]>
Date:   Mon Feb 6 18:18:30 2023 +0800

     feat(binder): support current_timestamp (risingwavelabs#7695)

    Approved-By: fuyufjh
    Approved-By: xxchan

    Co-Authored-By: aodong.qin <[email protected]>
    Co-Authored-By: ioperations <[email protected]>

commit b7a3448
Author: Dylan <[email protected]>
Date:   Mon Feb 6 17:36:33 2023 +0800

    fix(optimizer): fix distributed batch lookup join shuffle columns (risingwavelabs#7713)

    - As title.

    Approved-By: BugenZhao

commit b7507e5
Author: Shanicky Chen <[email protected]>
Date:   Mon Feb 6 17:08:13 2023 +0800

    chore: use short connection in etcd election client (risingwavelabs#7711)

    This PR changes the connection in the ETCD election client to a short connection to resolve a stuck etcd master migration in case of auth enable.

    Approved-By: yezizp2012

commit a9af7f9
Author: Yuanxin Cao <[email protected]>
Date:   Mon Feb 6 16:06:45 2023 +0800

    fix(ci): fix main-cron by increasing total compute node memory in compaction test (risingwavelabs#7703)

    As title.

    Approved-By: kwannoel

commit 77b4607
Author: August <[email protected]>
Date:   Mon Feb 6 15:09:44 2023 +0800

    feat(frontend): introduce system catalog table pg_enum (risingwavelabs#7706)

    Introduce system catalog table `pg_enum`.

    Approved-By: neverchanje

commit 7e565a7
Author: Yuanxin Cao <[email protected]>
Date:   Mon Feb 6 14:44:30 2023 +0800

    feat(optimizer): watermark derivation for various plan nodes (risingwavelabs#7655)

    Add watermark derivation for various plan nodes. Watermark derivation for `TableScan` hasn't been implemented because it may need to modify table catalog and will be done in future PR.

    Approved-By: st1page

commit c3bb027
Author: ZENOTME <[email protected]>
Date:   Mon Feb 6 14:16:39 2023 +0800

    feat(frontend): seperate plan_fragmenter into two phase (risingwavelabs#7581)

    To solve risingwavelabs#7439, we need to do async operation in plan_fragmentor. To do this, I seperate the plan_fragmentor into two phase **so that we can do async operation in phase 2**:

    phase 1 : BatchPlanFragmenter.split(batch_node) -> PreStageGraph
    phase 2 : PreStageGraph.complete() -> StageGraph

    The difference between PreStageGraph and StageGraph is that StageGraph contains the exchange_info and parallism. These information will be filled in phase 2.

    Approved-By: liurenjie1024

commit 2678067
Author: Eric Fu <[email protected]>
Date:   Mon Feb 6 13:06:04 2023 +0800

    feat: display git version in `version()` and server logs (risingwavelabs#7690)

    Show Git version in `version()` and server logs. Would be helpful when looking into problems, especially for nightly versions.

    ```
    dev=> select version();
    version
    --------------------------------------------------
    PostgreSQL 13.9-RisingWave-0.2.0-alpha (b720f19)
    (1 row)
    ```

    ```
    2023-02-03T10:35:25.446834Z  INFO risingwave_compute::server: Starting compute node
    2023-02-03T10:35:25.446858Z  INFO risingwave_compute::server: > config: RwConfig { server: ServerConfig { heartbeat_interval_ms: 1000, max_heartbeat_interval_secs: 600, connection_pool_size: 16, metrics_level: 0 }, meta: MetaConfig { min_sst_retention_time_sec: 604800, collect_gc_watermark_spin_interval_sec: 5, periodic_compaction_interval_sec: 60, vacuum_interval_sec: 30, max_heartbeat_interval_secs: 600, disable_recovery: true, meta_leader_lease_secs: 10, dangerous_max_idle_secs: Some(1800), enable_compaction_deterministic: false, enable_committed_sst_sanity_check: false, node_num_monitor_interval_sec: 10, backend: Mem }, batch: BatchConfig { worker_threads_num: None, developer: DeveloperConfig { batch_output_channel_size: 64, batch_chunk_size: 1024, stream_enable_executor_row_count: false, stream_connector_message_buffer_size: 16, unsafe_stream_extreme_cache_size: 1024, stream_chunk_size: 1024, stream_exchange_initial_permits: 8192, stream_exchange_batched_permits: 1024 } }, streaming: StreamingConfig { barrier_interval_ms: 1000, in_flight_barrier_nums: 10000, checkpoint_frequency: 10, actor_runtime_worker_threads_num: None, enable_jaeger_tracing: false, async_stack_trace: On, developer: DeveloperConfig { batch_output_channel_size: 64, batch_chunk_size: 1024, stream_enable_executor_row_count: false, stream_connector_message_buffer_size: 16, unsafe_stream_extreme_cache_size: 1024, stream_chunk_size: 1024, stream_exchange_initial_permits: 8192, stream_exchange_batched_permits: 1024 } }, storage: StorageConfig { sstable_size_mb: 256, block_size_kb: 64, bloom_false_positive: 0.001, share_buffers_sync_parallelism: 1, share_buffer_compaction_worker_threads_number: 4, shared_buffer_capacity_mb: 1024, state_store: "hummock+memory", data_directory: "hummock_001", write_conflict_detection_enabled: true, block_cache_capacity_mb: 512, meta_cache_capacity_mb: 128, disable_remote_compactor: false, enable_local_spill: true, local_object_store: "tempdisk", share_buffer_upload_concurrency: 8, compactor_memory_limit_mb: 512, sstable_id_remote_fetch_number: 10, file_cache: FileCacheConfig { dir: "", capacity_mb: 1024, total_buffer_capacity_mb: 128, cache_file_fallocate_unit_mb: 512, cache_meta_fallocate_unit_mb: 16, cache_file_max_write_size_mb: 4 }, min_sst_size_for_streaming_upload: 33554432, max_sub_compaction: 4, object_store_use_batch_delete: true, max_concurrent_compaction_task_number: 16, enable_state_store_v1: false }, backup: BackupConfig { storage_url: "memory", storage_directory: "backup" } }
    2023-02-03T10:35:25.447014Z  INFO risingwave_compute::server: > debug assertions: on
    2023-02-03T10:35:25.447043Z  INFO risingwave_compute::server: > version: 0.2.0-alpha (75de7ee)
    ```

    Approved-By: liurenjie1024

commit 2dfa704
Author: lmatz <[email protected]>
Date:   Mon Feb 6 12:23:39 2023 +0800

    fix(meta): temporarily does not require advertise_addr when using etcd

commit 167afb3
Author: xiangjinwu <[email protected]>
Date:   Mon Feb 6 12:11:40 2023 +0800

    refactor(DataType): cleanup outdated helpers (risingwavelabs#7685)

    The following 2 helpers are no longer used in any place: `is_type_encodable`, `mem_cmp_eq_value_enc`.

    Note: right now all DataTypes are encodable in memcomparable format. We will reintroduce the difference and disallow certain types from being used as memcomparable later.

    Approved-By: liurenjie1024

commit b996ba1
Author: ZENOTME <[email protected]>
Date:   Mon Feb 6 11:13:19 2023 +0800

    chore(test):add e2e test for producing timestamp in kafka source (risingwavelabs#7699)

    Approved-By: liurenjie1024

commit 50fc449
Author: Eric Fu <[email protected]>
Date:   Mon Feb 6 10:44:18 2023 +0800

    fix: alias of argument `advertise_addr` (risingwavelabs#7702)

    The alias of `--advertise-addr` should be `--client-address` to keep compatible with previous versions.

    Approved-By: lmatz
    Approved-By: huangjw806

commit 4e9756d
Author: xxchan <[email protected]>
Date:   Sat Feb 4 08:17:40 2023 +0100

    ci: add github_token for buf-setup-action (risingwavelabs#7697)

    Approved-By: tabVersion

commit 05eb37f
Author: xxchan <[email protected]>
Date:   Fri Feb 3 23:55:18 2023 +0100

    feat: implement append-only group TopN (risingwavelabs#7522)

    close risingwavelabs#7376

    Approved-By: BugenZhao

commit dffc2f1
Author: Yuanxin Cao <[email protected]>
Date:   Sat Feb 4 00:37:50 2023 +0800

    feat: ensure reserved memory for computing tasks on compute node starting (risingwavelabs#7670)

    The total memory of a CN consists of:

    1. computing memory (both stream & batch)
    2. storage memory (block cache, meta cache, etc.)
    3. memory for system usage

    That is to say, we have **_CN total memory_ = _computing memory_ + _storage memory_ + _system memory_**, and both _CN total memory_ and _storage memory_ are configured by the user currently. This PR is to ensure that _computing memory_ and  _system memory_ are correctly reserved,, i.e. **_computing memory_ + _system memory_ = _CN total memory_ - _storage memory_ > a given amount of memory**. We set this "given amount of memory" as 1G for now (512M for computing and 512M for system). The check is performed on CN starting.

    Approved-By: fuyufjh
    Approved-By: hzxa21

commit 20bdb72
Author: Bowen <[email protected]>
Date:   Fri Feb 3 19:20:31 2023 +0800

    fix: report local execution mode error (risingwavelabs#7454)

    1. Enable local mode error propagation. Now when local mode task (in CN) happens error, it can report to users.
    2. Store sender in TaskExecution, avoid early drop (Otherwise it's possible that the task execution error will become hash shuffle error)

    This pr revert some previous workaround: TODO in sqlsmith, store the sender in task execution

    Approved-By: liurenjie1024

    Co-Authored-By: BowenXiao1999 <[email protected]>
    Co-Authored-By: Bowen <[email protected]>

commit a3306ea
Author: xxchan <[email protected]>
Date:   Fri Feb 3 11:40:52 2023 +0100

    feat: don't report error when cancelling `risedev configure` (risingwavelabs#7673)

    Also tweak the prompts

    Approved-By: BugenZhao
    Approved-By: TennyZhuang

commit 930b185
Author: Shanicky Chen <[email protected]>
Date:   Fri Feb 3 17:34:29 2023 +0800

    feat: refine meta election logic (risingwavelabs#7669)

    This PR refine a series of meta election related codes

    1. meta's addr supports multiple addresses
    2. meta client adds a meta address mode parameter to distinguish the behavior of election members found in loadbalance (kubernetes environment) and list (normal environment)

    Approved-By: yezizp2012

commit 496f7a9
Author: Noel Kwan <[email protected]>
Date:   Fri Feb 3 15:23:56 2023 +0800

    fix(sqlsmith): generate typed null (risingwavelabs#7679)

    Approved-By: fuyufjh

commit 50bd487
Author: Eric Fu <[email protected]>
Date:   Fri Feb 3 14:59:58 2023 +0800

    fix: bug of MetaNodeOpts (risingwavelabs#7681)

    It seems to be a mistake introduced in risingwavelabs#7658

    Approved-By: Gun9niR

commit f1c4558
Author: zwang28 <[email protected]>
Date:   Fri Feb 3 14:35:40 2023 +0800

    chore(log): suppress unnecessary warning (risingwavelabs#7676)

    Change this warning message into a debug message, because it's the expected behavior during backfill. Otherwise it can overwhelm the log stream during a large MV creation.

    Approved-By: wenym1

commit a97e94f
Author: Yi Zhang <[email protected]>
Date:   Fri Feb 3 14:12:16 2023 +0800

    feat(ci): add e2e test for iceberg sink (risingwavelabs#7631)

    This PR adds e2e tests for iceberg sink in PR & main branch workflows, which includes:
    - setting up the environment (creating a new bucket in hummock-minio with `mcli`, creating an iceberg table with `spark-sql`)
    - running `e2e_test/sink/iceberg_sink.slt`
    - checking the test results (reading from the iceberg table with `spark-sql` and matching the output)

    Approved-By: wenym1
    Approved-By: StrikeW
    Approved-By: tabVersion

commit b720f19
Author: Noel Kwan <[email protected]>
Date:   Fri Feb 3 12:03:46 2023 +0800

    feat(sqlsmith): gen implicit cast (risingwavelabs#7629)

    - [x] Gen for fixed func
    - [x] Gen for concat (note that this is implicit cast but in explicit context...)

    Approved-By: lmatz

    Co-Authored-By: Noel Kwan <[email protected]>
    Co-Authored-By: Noel Kwan <[email protected]>

commit 1f6b063
Author: ioperations <[email protected]>
Date:   Fri Feb 3 11:35:37 2023 +0800

    fix(sqlparser): fix operator precedence between '>=' and 'IN' (risingwavelabs#7665)

    Approved-By: kwannoel

    Co-Authored-By: Noel Kwan <[email protected]>
    Co-Authored-By: aodong.qin <[email protected]>
    Co-Authored-By: ioperations <[email protected]>

commit 704cc4f
Author: jon-chuang <[email protected]>
Date:   Fri Feb 3 11:12:45 2023 +0800

    feat(service-params): Rename `host -> listen_addr`, `client_addr -> advertise_addr` (risingwavelabs#7530)

    Rename `host -> listen_addr`, `client_addr -> advertise_addr` for clearer meaning of cmdline params.

    Approved-By: CAJan93

    Co-Authored-By: jon-chuang <[email protected]>
    Co-Authored-By: jon-chuang <[email protected]>

commit bb673d4
Author: jon-chuang <[email protected]>
Date:   Fri Feb 3 10:15:13 2023 +0800

    feat(frontend): define `ConstantEvalRewriter`, impl `ExprRewritable` for batch (risingwavelabs#7541)

    Next steps:
    - impl for stream nodes

    Depends on: risingwavelabs#7542

    Let's remember to enable `now.slt.part` after we enable `ConstantEvalRewriter`.

    Approved-By: chenzl25

commit 99ffb71
Author: Noel Kwan <[email protected]>
Date:   Thu Feb 2 23:59:02 2023 +0800

    fix(sqlsmith): generation of ambiguous `IN` `list` expression (risingwavelabs#7672)

    Generate `InList` expression with parenthesis in the prefix argument to avoid ambiguity.

    Approved-By: lmatz

commit 00b0e36
Author: August <[email protected]>
Date:   Thu Feb 2 22:18:53 2023 +0800

    chore(test): minor code refactoring in simulation test (risingwavelabs#7666)

    Approved-By: BugenZhao
    Approved-By: wangrunji0408

commit 9fd7721
Author: ZENOTME <[email protected]>
Date:   Thu Feb 2 20:46:16 2023 +0800

    feat(pgwire):support mix format in extended query mode (risingwavelabs#7622)

    as title. Solve the issue risingwavelabs#7605 and risingwavelabs#7599

    Approved-By: BowenXiao1999
    Approved-By: xiangjinwu

commit 477e30d
Author: Dylan <[email protected]>
Date:   Thu Feb 2 17:44:31 2023 +0800

    feat(streaming): support delta join on primary table (risingwavelabs#7662)

    - Support delta join on primary table, because primary table is also an index as well.

    Approved-By: st1page

commit e987106
Author: Zhidong Guo <[email protected]>
Date:   Thu Feb 2 16:42:58 2023 +0800

    feat(cli): fallback to env if CLI arg is absent (risingwavelabs#7658)

    As title.

    All envs will have the prefix of `RW`. Clap does not support prefixing env at the moment, so we have to specify the name manually 🥵. Serfig provides this functionality, but it still has the limitation of being unable to override with default value.

    As for backward compatibility, although the env names have changed, the CLI args remain the same.

    Approved-By: fuyufjh

commit 83e7f00
Author: August <[email protected]>
Date:   Thu Feb 2 16:06:43 2023 +0800

    fix(meta): fix meta_endpoint format when host not provided in playground mode (risingwavelabs#7661)

    Fix `meta_endpoint` format when `host` is not provided in playground mode, the endpoint will be wrongly generated as `127.0.0.1:5690:5690`.

    Approved-By: lmatz
    Approved-By: tabVersion
    Approved-By: BugenZhao

commit e7fe72b
Author: Wallace <[email protected]>
Date:   Thu Feb 2 13:04:58 2023 +0800

    feat(storage): use finer granularity to monitor request latency (risingwavelabs#7586)

    We used to thought the iterator latency of state-store could always exceed several hundred microsecond but it is a mistake caused by metrics. In fact, in most case, it is only several micro-seconds

    Approved-By: Li0k

commit df85930
Author: CAJan93 <[email protected]>
Date:   Thu Feb 2 04:54:27 2023 +0100

    feat(docs): Add documentation on how to run RW with debugger (risingwavelabs#7652)

    Simple docs on how to run RW locally using a debugger. Hope you find it useful. For me it sometimes helps to step through the code line by line

    Approved-By: lmatz

commit 9b9e092
Author: waruto <[email protected]>
Date:   Thu Feb 2 09:49:38 2023 +0800

    refactor(source): refine some code of split reader (risingwavelabs#7644)

    - move the implementation of `SplitReaderV2` to the readers themselves.

    Approved-By: xx01cyx
    Approved-By: tabVersion

commit 0f7bfa2
Merge: 95085ee 3d9077b
Author: Wallace <[email protected]>
Date:   Wed Feb 1 22:17:14 2023 +0800

    Merge branch 'main' into refactor-bloom-filter

commit 95085ee
Author: Little-Wallace <[email protected]>
Date:   Fri Jan 20 11:53:21 2023 +0800

    rename trait

    Signed-off-by: Little-Wallace <[email protected]>

commit 660ad11
Author: Little-Wallace <[email protected]>
Date:   Fri Jan 20 11:43:42 2023 +0800

    fix test

    Signed-off-by: Little-Wallace <[email protected]>

commit c6d9ac3
Author: Little-Wallace <[email protected]>
Date:   Thu Jan 19 17:33:24 2023 +0800

    fix name

    Signed-off-by: Little-Wallace <[email protected]>

commit 523b5a4
Author: Little-Wallace <[email protected]>
Date:   Thu Jan 19 17:07:52 2023 +0800

    refactor builder

    Signed-off-by: Little-Wallace <[email protected]>

Signed-off-by: Little-Wallace <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type/bug Something isn't working
Projects
None yet
Development

No branches or pull requests

3 participants