-
Notifications
You must be signed in to change notification settings - Fork 107
index pruning panic #1272
Comments
metrictank/idx/memory/memory.go Line 1268 in 88830e3
Looks like this is not being obeyed. metrictank/idx/memory/memory.go Lines 1184 to 1186 in 88830e3
|
@woodsaj can you elaborate? is deleteTaggedByIdSet() being called for series that don't have tags? where/how? |
This is originating in Prune() metrictank/idx/memory/memory.go Line 1340 in 88830e3
Somehow the same id was matched for a toPruneTagged and ToPruneUntagged |
Looking at the code, the only way for that to happen is if series is sent with the tags in the "name" field and then sent separately with the tags in the "Tags" field. And in this example, both expired at the same time. eg.
series2
Both of these series will end up with the same ID. but one will be added to the Tree index and one added to Tags index. This just looks like another example of us running into problem because we are not strictly validating metric names on ingestion. |
We should be able to verify if this is in fact the cause of the problem by dumping the index and looking for series that have a names with ';' in them. |
this doesn't seem to be the case.
the other thing worth noting here is that the instance was upgraded last week from v0.11.0 to v0.11.0-219-g88830e3 and that we only started seeing this now, so i suspect it's something to do with recent code. E.g. the partitioned memory index maybe. |
@Dieterbe the latest version of hm-dump-index.sh already removes duplicates and it uses nameWithTags not 'name'. So it is not going to be able to give you any insights that can be used for this issue |
I dumped the series names from cassandra to csv. There are no names with ";" in them, confirming your findings @Dieterbe |
I'm gonna close this. we have merged a workaround. not a true fix but it'll do for now. |
Was the final fix #1303 ? |
metrictank:v0.11.0-219-g88830e3
The text was updated successfully, but these errors were encountered: