Memory allocation limit reached: limit 10000000 bytes, allocated: xxxxxxxx, wanted: xxxxx

Steps to reproduce:

  1. Happens on any dashboard that queries a lot of data with a simple query
    e.g.
    from(bucket: "PLC_Router_Data") |> range(start: v.timeRangeStart, stop: v.timeRangeStop) |> filter(fn: (r) => r["_measurement"] == "data") |> filter(fn: (r) => r["host"] == v.my_PLC_source) |> filter(fn: (r) => r["_field"] =~ /ress/ and r["_field"] !~ /Application/) |> group(columns: ["_field"], mode:"by") |> toFloat() |> sort(columns: ["_time"], desc: false)

Expected behavior:
I expect that performing the same query on the same dataset for the same duration either results in:

  1. The query always fails if we are genuinely doing something that consumes massive amounts of memory (it succeeds 50% of the time)
    OR
  2. The query always succeeds if it’s not

Actual behavior:
Sometimes you get data
image

Sometimes you get the failure
image

Environment info:

  • InfluxDB 2.0 Cloud
1 Like

Hello @asmith,
I’m not sure. I’m passing your question along to someone who can help. Thanks for your patience.

same question here. Any updates?

Thanks for joining in @wangye_sli .
No updates. But I know that if @Anaisdg is on the case then we’re good!!! :slight_smile:

I am still getting this. It happened 2 days ago in fact
It is happening as I explore data with Dashboards

The impact would be much more severe if it was happening to “Tasks”.

I’m uncomfortable with the idea that InfluxDB Cloud 2.0 “sometimes” completes a query and “sometimes” doesn’t.

It doesn’t sound like the reliability we need.

@Anaisdg
Clearly the query is sometimes hitting a 10MB RAM limit.
But under what circumstances is memory limited to 10MB?
Do all queries get this 10MB limit?
Or is it applied under certain circumstances?

I think the limit applies to dashboard graph only. I was able to walk around the limit warning by using customized duration when aggregating:

|> aggregateWindow(every: duration(v:"60m"), fn: last, createEmpty: false)

Right, but

|> aggregateWindow(every: duration(v:“60m”), fn: last, createEmpty: false)

is going to massively reduce the data returned and the RAM needed.
So what you have done is change the query in a way which hides the bug/behaviour.

clicking refresh on the same dashboard “sometimes” gets the error and sometimes doesn’t.

That’s not reliable and is certainly undesirable. I’m seeking to get it fixed.

@wangye_sli
Can you successfully reproduce the undesirable behaviour?
How?

RAM exceeding alert happens when there are multiple plots on the same dashboard

I just ran into this issue for the first time.
memory allocation limit reached: limit 4000000000 bytes (…)

I query using the Python client, on pay-per-use cloud 2.0. Seems to break pretty much all queries that aren’t tiny. I’ve recently migrated large amounts of data into InfluxDB so maybe that caused some increase where I’m now running into a limit.
I don’t think I can fix this on my end, and the worst part is it doesn’t show up as a “limiting event”.

This is breaking loads of our internal applications, it’s a guessing game if a download works.

Anyone any ideas?

So you get this when you are querying from Python…
OK, so what do you get if you do the same query from the explorer in Cloud 2.0?