System.views shows up in my database after upgrading (causing connection issues)

So I recently upgraded from M0–>M10

I have an external application that connects to my MongoDB, all was working great with the M0 tier, but I decided to upgrade to leverage the Power BI Connection capabilities.

Anyways, now I get an error:

not authorized on EmergDB to execute command { find: “system.views”, filter: {}, limit: 50, returnKey: false, showRecordId: false, lsid: { id: UUID(“2eb7f5f9-7e75-4a72-a20f-a8ca0ab65243”) },
$clusterTime: { clusterTime: Timestamp(1661880398, 1), signature: { hash: BinData(0, 28DC930BC47675C14EAB04D802D8CE93E636C55A), keyId: 7137659592053358596 } }, $db: “EmergDB” }

And now I see system.views as a collection in my database (never existed before).

I’m really struggling here because now my application won’t connect to the database at all. Any help would be greatly appreciated.

Hi @Ahmed_Chaarani,

I’m really struggling here because now my application won’t connect to the database at all.

Just to clarify, are you not able to connect at all after upgrading? Based off the error, it seems connection is possible but the database user is not authorized to perform a db.collection.find() command on the "system.views" collection within the EmergDB database.

And now I see system.views as a collection in my database (never existed before).

As per the following documentation:

MongoDB stores system information in collections that use the <database>.system.* namespace, which MongoDB reserves for internal use.

Additionally:

The <database>.system.views collection contains information about each view in the database.

To further help us assist you with this issue, can you provide the following information:

  • MongoDB version in use
  • The connection portion of the code used to connect to the database (Please redact any personal or sensitive information)
  • The associated roles / privledges of the database user that the error is being returned for (As well as the database user used for power BI)
  • Further details surrounding the “external application that connects to my MongoDB”. (Driver, driver version, etc)
  • Any connection string(s) in use (please redact credentials)
  • Confirmation that the issue is only for the external application or Power BI

Regards,
Jason

2 Likes

Hi Jason

I am pretty sure previously I was able to see the view definition with a command like this.

db.getCollection(‘system.views’).find()

However, I am no longer able to see it now. Has this changed in recent Atlas version ?

Please let me know

Thanks
Alex

never mind. db.getCollectionInfos( ) gives me the definition.