Metadata is no longer being updated

Hi everyone,

do not know why, but suddenly I noticed that I cannot update anymore the metadata in my free index. I have always don that using python, and my code is always the same. So I cannot really explain this to myself.
The response of my update run is an empty dictionary.
Of course I checked if the id is ok by querying the index.

update_response = pineconeIndex.update(
                id= idTitle,
                set_metadata=meta_
            )

Where idTitle is a string and meta_ a dictionary.

Appreciate any help!

Hello!

Would you mind sharing how you’re defining pineconeIndex in your code? We just released a new, major version of the pinecone-client, so there’s a chance something in your code needs to change (if it’s been working up until recently).

Thanks!

Hello! Thanks for the support. Of course, here how I define the index:

#PINECONE
pinecone_key = ""
os.environ['PINECONE_API_KEY'] = pinecone_key
environment = ""
pinecone.init(api_key=pinecone_key, environment=environment)

pineconeIndex = pinecone.Index("my-index")

Furthermore I’ve just update the pinecone library through “pip install pinecone-client --upgrade” and now, when I run my code, I got this error:

TypeError: super(type, obj): obj must be an instance or subtype of type
1 Like

Hi @andesogus, you’ll need to change how you initialize your connection to Pinecone:

pinecone = Pinecone(api_key='YOUR_API_KEY')

For more information, check out the documentation that Audrey shared above!

1 Like

Thanks @zeke_pinecone and also @AudreyLorb.Pinecone for the information about the new release. However, now that I correctly installed the new version and I’m using the new way of initializing pinecone = Pinecone(api_key='YOUR_API_KEY') I still got the previous issue, ie cannot update the index and it keeps returning an empty dict as a response.

And I repeat, this is very strange to me. It’s one week that I constantly updating my index with new metadata and it’s overall the first time I have problem with pinecone api.

Thanks for giving that a try. Can you please share/answer the following information/question:

  1. The exact content of the meta_ variable that you pass to the set_metadata parameter.
  2. The result of calling pineconeIndex.Fetch(ids=['<id>']) on the ID of the record you are trying to update.
  3. Does the record you are trying to update belong to a namespace?

Thanks!

Of course!

  1. meta_ is a dictionary made like this:
{ 
'area': '...',
 'tipo': '...',
 'categoria': '...',
 'externalId': '...',
 'keywords': ['...','...']
}

However I tried also with {'test':'test'} and I got the same issue.

  1. The result is too long to be displayed here, since it contains both the vectors and the metadata values that are already consistent. But running res = pineconeIndex.fetch(ids=['my_id']).to_dict() I get a dictionary with all the vectors and metadata, and the key “namespace” empty.

  2. No I do not have namespace so it doesn’t!.

Let me know if you need further information.
Also, looking on multiple items I noticed that sometimes the metadata have been updated (actually I do not know if they’ve been updated yesterday before this issue hit me). But it seems impossible understanding the logic without getting any errors.

To update any viewers of this ticket, @andesogus and I are continuing the discussion via standard support procedures. So far, this is the only report of this behavior we’ve received.

We have yet to be able to reproduce the issue aside from within the one affected index, but if you experience similar behavior, please post here on this thread so that we can take a look!

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.