Thanks Dian - I’m restricted to 1.13 for the moment because this is running inside AWS Kinesis. Is there a way to manually bypass that issue?
J Sent from my iPhone On 17 Jun 2022, at 04:59, Dian Fu <dian0511...@gmail.com> wrote: >> This error generally occurs in jobs where there are transfers between Table >> and datastream. AFAIK, this issue should have already been fixed, see https://issues.apache.org/jira/browse/FLINK-26920 and https://issues.apache.org/jira/browse/FLINK-23133 for more details. Regards, Dian On Fri, Jun 17, 2022 at 10:17 AM Xingbo Huang <hxbks...@gmail.com<mailto:hxbks...@gmail.com>> wrote: Hi John, Because I can't see your code, I can only provide some possible reasons for this error: 1. This error generally occurs in jobs where there are transfers between Table and datastream. But given that you said you just used the sql + python udf, this shouldn't be the case. 2. The default value of `taskmanager.memory.managed.consumer-weights` is `OPERATOR:70,STATE_BACKEND:70,PYTHON:30`, so in your case, there is actually no need to set it to `PYTHON:30` 3. In fact, for pure sql+python udf jobs, if you don't set error value `PYTHON:0` in `taskmanager.memory.managed.consumer-weights`, I really can't think of any situation where this problem will occur. Best, Xingbo John Tipper <john_tip...@hotmail.com<mailto:john_tip...@hotmail.com>> 于2022年6月16日周四 19:41写道: Hi Xingbo, Yes, there are a number of temporary views being created, where each is being created using SQL (CREATE TEMPORARY VIEW ...) rather than explicit calls to the Table and DataStream APIs. Is this a good pattern or are there caveats I should be aware of please? Many thanks, John ________________________________ From: Xingbo Huang <hxbks...@gmail.com<mailto:hxbks...@gmail.com>> Sent: 16 June 2022 12:34 To: John Tipper <john_tip...@hotmail.com<mailto:john_tip...@hotmail.com>> Cc: user@flink.apache.org<mailto:user@flink.apache.org> <user@flink.apache.org<mailto:user@flink.apache.org>> Subject: Re: The configured managed memory fraction for Python worker process must be within (0, 1], was: %s Hi John, Does your job logic include conversion between Table and DataStream? For example, methods such as `create_temporary_view(path: str, data_stream: DataStream): -> Table` are used. Best, Xingbo John Tipper <john_tip...@hotmail.com<mailto:john_tip...@hotmail.com>> 于2022年6月16日周四 18:31写道: Hi Xingbo, I’m afraid I can’t share my code but Flink is 1.13. The main Flink code is running inside Kinesis on AWS so I cannot change the version. Many thanks, John Sent from my iPhone On 16 Jun 2022, at 10:37, Xingbo Huang <hxbks...@gmail.com<mailto:hxbks...@gmail.com>> wrote: Hi John, Could you provide the code snippet and the version of pyflink you used? Best, Xingbo John Tipper <john_tip...@hotmail.com<mailto:john_tip...@hotmail.com>> 于2022年6月16日周四 17:05写道: Hi all, I'm trying to run a PyFlink unit test to test some PyFlink SQL and where my code uses a Python UDF. I can't share my code but the test case is similar to the code here: https://github.com/apache/flink/blob/f8172cdbbc27344896d961be4b0b9cdbf000b5cd/flink-python/pyflink/testing/test_case_utils.py When I have some simple SQL everything is fine. When I add a more complex query I get an error, which looks like it's memory related. java.lang.IllegalArgumentException: The configured managed memory fraction for Python worker process must be within (0, 1], was: %s. It may be because the consumer type "Python" was missing or set to 0 for the config option "taskmanager.memory.managed.consumer-weights".0.0 In my test case setUp(), I try to set that value like this, but it seems to have no effect: self.t_env.get_config().get_configuration().set_string("taskmanager.memory.managed.consumer-weights", "PYTHON:30") Am I not setting it correctly, or is there something else I need to do to fix this error? Many thanks, John