Bobcares

Mongodb error code 11000 – How we fix it

by | Sep 9, 2019

Application and websites generate too much data even in a single transaction.

How can we handle this huge amount of data efficiently?

Thanks to the NoSQL capabilities of MongoDB, it makes websites scalable and offers superior performance.

However, the MongoDB error code 11000 can happen due to duplicate entries or bad syntax.

At Bobcares, we often get requests from our customers to fix MongoDB error code 11000 as part of our Server Migration Services.

Today, let’s see how our Migration Engineers fix MongoDB error code 11000.

 

How we fixed MongoDB error code 11000

At Bobcares, where we have more than a decade of expertise in managing servers, we see many customers face problems while managing MongoDB database.

Now let’s see the major reasons for MongoDB errors and how our Support Engineers fix the top errors.

 

1. Wrong syntax

Recently, one of our customers wanted to recover data from a MySQL database and transform it into JSON for integration into the MongoDB database.

When it was a single insertion it worked fine. But while doing 45000 insertion, it did not work and resulted in the error:

(node:31032) UnhandledPromiseRejectionWarning: WriteError({"code":11000,"index":0,"errmsg":"E11000 duplicate key error collection: meteor.depart index: _id_ dup key: { : ObjectId('5b1527ee6161057938e0aef0') }","op":{"jourExpl
oitation":::::,"_id":"5b1527ee6161057938e0aef0"}})

On checking our MongoDB Experts found that the problem happened due to syntax error.

When using insertMany, we should use the forceServerObjectId flag. Therefore, we suggested the customer to use the following code to solve the problem.

manyInsert.insertMany(dataJsonInsert, { forceServerObjectId: true }); 

This fixed the problem.

 

2. Duplicate record

Similarly, another customer had an  E11000 duplicate key error index in MongoDB mongoose. The error said

Error creating new user: WriteError({"code":11000,"index":0,"errmsg":"insertDocument :: caused by :: 11000 E11000 duplicate key error index

On checking the schema, we found that the customer renamed the field to username, but didn’t remove the old index. By default, MongoDB will set the value of a non-existent field to null in that case.

If a document does not have a value for the indexed field in a unique index, the index for this document will store a null value.

Due to the unique condition, MongoDB will only allow one document lacking the indexed field. Also, If there is more than one document without a value for the indexed field or is missing the indexed field, the index execution will fail and results in a duplicate key error.

So, our Support Engineers removed the index for the renamed name field and solved the error.

 

[Need assistance to fix MongoDB error code 11000? We’ll help you.]

 

Conclusion

In short, the MongoDB error code 11000 may happen when a document does not have a value for the indexed field or due to the wrong syntax used. Today, we saw the various reasons for MongoDB errors and how our Support Engineers fix them.

PREVENT YOUR SERVER FROM CRASHING!

Never again lose customers to poor server speed! Let us help you.

Our server experts will monitor & maintain your server 24/7 so that it remains lightning fast and secure.

GET STARTED

var google_conversion_label = "owonCMyG5nEQ0aD71QM";

0 Comments

Submit a Comment

Your email address will not be published. Required fields are marked *

Never again lose customers to poor
server speed! Let us help you.

Privacy Preference Center

Necessary

Necessary cookies help make a website usable by enabling basic functions like page navigation and access to secure areas of the website. The website cannot function properly without these cookies.

PHPSESSID - Preserves user session state across page requests.

gdpr[consent_types] - Used to store user consents.

gdpr[allowed_cookies] - Used to store user allowed cookies.

PHPSESSID, gdpr[consent_types], gdpr[allowed_cookies]
PHPSESSID
WHMCSpKDlPzh2chML

Statistics

Statistic cookies help website owners to understand how visitors interact with websites by collecting and reporting information anonymously.

_ga - Preserves user session state across page requests.

_gat - Used by Google Analytics to throttle request rate

_gid - Registers a unique ID that is used to generate statistical data on how you use the website.

smartlookCookie - Used to collect user device and location information of the site visitors to improve the websites User Experience.

_ga, _gat, _gid
_ga, _gat, _gid
smartlookCookie
_clck, _clsk, CLID, ANONCHK, MR, MUID, SM

Marketing

Marketing cookies are used to track visitors across websites. The intention is to display ads that are relevant and engaging for the individual user and thereby more valuable for publishers and third party advertisers.

IDE - Used by Google DoubleClick to register and report the website user's actions after viewing or clicking one of the advertiser's ads with the purpose of measuring the efficacy of an ad and to present targeted ads to the user.

test_cookie - Used to check if the user's browser supports cookies.

1P_JAR - Google cookie. These cookies are used to collect website statistics and track conversion rates.

NID - Registers a unique ID that identifies a returning user's device. The ID is used for serving ads that are most relevant to the user.

DV - Google ad personalisation

_reb2bgeo - The visitor's geographical location

_reb2bloaded - Whether or not the script loaded for the visitor

_reb2bref - The referring URL for the visit

_reb2bsessionID - The visitor's RB2B session ID

_reb2buid - The visitor's RB2B user ID

IDE, test_cookie, 1P_JAR, NID, DV, NID
IDE, test_cookie
1P_JAR, NID, DV
NID
hblid
_reb2bgeo, _reb2bloaded, _reb2bref, _reb2bsessionID, _reb2buid

Security

These are essential site cookies, used by the google reCAPTCHA. These cookies use an unique identifier to verify if a visitor is human or a bot.

SID, APISID, HSID, NID, PREF
SID, APISID, HSID, NID, PREF