We are currently using StarRocks version 3.5.6. Ca...
# questions-and-troubleshooting
u
We are currently using StarRocks version 3.5.6. Can I adjust the FE/BE configurations to prevent this issue from happening?
k
check what the query looks like, that triggers this error.
u
The sql:select project_id,indicator , sum(value) as value from ( select project_id, device_id, indicator , sum(value) as value, count() as nums, Count(distinct device_id) as devNums from ( select project_id, device_id, indicator, num ,date_trunc('month',fromUnixtimeWithTimezone(cast(`time` as string),'Europe/Berlin')) as month, value from tuya_basic.device_indicator_dimension_detail_all where types='open' and project_id='p1684122229458udn5g3' and indicator in ('ele_produce') and ((fromUnixtimeWithTimezone(time,'Europe/Berlin') >= '2025-10-26 000000' and fromUnixtimeWithTimezone(time,'Europe/Berlin') <= '2025-10-31 235959')) and time_format >= '2025-10-25 000000' and time_format <= '2025-11-01 235959' and tag10 in ('207905469') and time_zone_id <> '' union all SELECT project_id, device_id, indicator, num ,date_truncate('month',convert_tz(hour,'Etc/GMT','Europe/Berlin')) as month, sumsValue as value FROM tuya_basic.dws_device_energy_metering_timezone_hour WHERE types = 'open' AND project_id = 'p1684122229458 udn5g3' and indicator in ('ele_produce')and ((convert_tz(hour,'Etc/GMT','Europe/Berlin') >= '1970-01-01 000000' and convert_tz(hour,'Etc/GMT','Europe/Berlin') <= '2025-10-25 235959')) and hour >= '2022-12-31 000000' and hour <= '2025-10-26 235959' and tag10 = '207905469' and time_zone_id <> '' )a group by project_id, device_id, indicator )a group by project_id,indicator
k
how long has it been running before err out?
u
The TTL of the table tuya_basic.device_indicator_dimension_detail_all is set to 3, so it only retains data for 3 days. The abnormal file db22111/35238/25002588/meta/0000000000000000_0000000000000008.meta corresponds to a tablet in the device_indicator_dimension_detail_all table, which belongs to the partitions from the last 2–3 days.
image.png
queryTime from 45-113ms
k
check if the partition which the tablet belongs to get dropped during the query.
u
How can I check this? The table’s partition expiration relies on the 3-day TTL set during table creation, and there should be no manual drop operations.
k
search from FE logs or audit logs.
u
For this partition, the query between 07:42 and 07:46 on 2025-10-24 reported a “The specified key does not exist” error, while the deletion of the partition
<s3://olap-eu/c5/08052b61-b255-4d57-9f18-481558523d7c/db22111/35238/25002588>
occurred at 075106.486 on 2025-10-24.
This partition as well — the deletion log appeared about two minutes after the query failure.
k
shall check the begin of the drop partition op on FE log, the "removed s3://...." printed at the end of the deletion, which may take some time, depending on how many files/objects under the path.
u
This partition has many query failures, but no deletion log was found.
The
device_indicator_dimension_detail_all
table is designed to store data for the most recent three days. However, due to improper usage (which the business team has been asked to correct), historical data might also be written to the table. When queries do not specify partition conditions, a full table scan may occur. Based on log analysis, the “The specified key does not exist” exception can be summarized into two scenarios: 1. A query accesses a partition older than three days, and that partition happens to be in the process of being deleted by the TTL mechanism. 2. A query accesses today’s partition, but no logs indicating partition deletion are found.
The first scenario can be avoided by adjusting the business logic, but is the second scenario a bug?
k
or it is caused by the version expiration, the tablets employs MVCC, multiple versions can be there for the same tablet, and by default the non-latest version will be cleaned in 30 mins. try adjust
lake_autovacuum_grace_period_minutes
in FE configuration, if this helps in your case.
u
Thanks, I’ll try it
After changing the FE configuration
lake_autovacuum_grace_period_minutes
from 30 to 60 and observing for one day, it’s now a new day, but the FE logs still show the “The specified key does not exist” exception.
k
if continuously reported from the same file, it could be a different issue.
u
The logs continuously print the same key at different times.
How can I assist in troubleshooting this issue?
k
1. show partitions from the specific table, check the visible version. 2. list files from remote storage under the .../meta/ directory, what's the meta files there right now.
u
visible version
meta list right now
The non-existent keys all have the
0000000000000000
prefix. As can be seen, the
meta list
cannot find
0000000000000000
.
k
it's fine with the long 0 prefix, I assume it is 4.0 cluster, which the file bundling feature is enabled by default.
the partition visible version has moved to 10772, which is 0x29E2, the meta file shall be ..../meta/0000...000_...29E2.meta, if the reported error are far away from this version , shall be problem with the version info inconsistency.
u
From the logs and meta information, the version info seems to far away, which looks like a version info inconsistency. Also, I'd like to ask about the composition of the filename 0000000000000000_0000000000001CAF.meta. 0000000000001CAF is the visible version, but what does 0000000000000000 represent?
k
000000 is the tablet id if file bundling feature is off, when file bundling feature is on, all the tablets of the same partition shares the same meta file, so the tablet id part is just dummy 0s.
u
StarRocks Version: 3.5.6-3ba6b8d
k
upgraded to v4.0 and then rollback to v3.5.6?
u
Upgraded from v3.5.3 to v3.5.6, and v4.0 has not been deployed yet.
k
cc @Casey Luo
u
Is there any way to avoid the “The specified key does not exist” error in version 3.5? @Kevin Cai @Casey Luo
k
These 00000_000xxxx.meta not exist is not related, shall figure out the real tablet id trying to access which is not found.
u
The reported partition has multiple tablets, and all of them still exist — none have been deleted.
Is there a problem with the logic that uses the tablet ID
0000000000000000
?