You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@allura.apache.org by Dave Brondsema <da...@brondsema.net> on 2016/07/28 19:53:17 UTC

[allura:tickets] #8109 Reduce gridfs index creation



---

** [tickets:#8109] Reduce gridfs index creation**

**Status:** in-progress
**Milestone:** unreleased
**Labels:** performance 
**Created:** Thu Jul 28, 2016 07:53 PM UTC by Dave Brondsema
**Last Updated:** Thu Jul 28, 2016 07:53 PM UTC
**Owner:** Dave Brondsema


The `File` class creates a `GridFS` for basically any operation.  This includes viewing any attachment, thumbnail, project icon, project screenshot etc.  The pymongo GridFS code creates an index on `{ files_id: 1, n: 1 }` every time (with a little caching from going through `ensure_index`) which is a really unnecessary.  Pymongo 3.1 avoids all that index creation (see [here](http://api.mongodb.com/python/current/api/gridfs/index.html) but we aren't able to upgrade to pymongo 3.x since Ming doesn't support it yet: see https://sourceforge.net/p/merciless/bugs/27/ and  https://sourceforge.net/p/merciless/mailman/merciless-discuss/thread/CAJfq2JEicmKpwb31uN1ju%3D1jS0bVDS6fGVjk3n-dpL-BEFX3fg%40mail.gmail.com/#msg34734599 

We can work around it a little bit for the `GridFS()` constructor on 2.x  But the index will still be created on deletes and writes (within the `GridIn` class)


---

Sent from forge-allura.apache.org because dev@allura.apache.org is subscribed to https://forge-allura.apache.org/p/allura/tickets/

To unsubscribe from further messages, a project admin can change settings at https://forge-allura.apache.org/p/allura/admin/tickets/options.  Or, if this is a mailing list, you can unsubscribe from the mailing list.

[allura:tickets] #8109 Reduce gridfs index creation

Posted by Dave Brondsema <da...@brondsema.net>.
- **status**: review --> closed



---

** [tickets:#8109] Reduce gridfs index creation**

**Status:** closed
**Milestone:** unreleased
**Labels:** performance 
**Created:** Thu Jul 28, 2016 07:53 PM UTC by Dave Brondsema
**Last Updated:** Thu Jul 28, 2016 08:24 PM UTC
**Owner:** Dave Brondsema


The `File` class creates a `GridFS` for basically any operation.  This includes viewing any attachment, thumbnail, project icon, project screenshot etc.  The pymongo GridFS code creates an index on `{ files_id: 1, n: 1 }` every time (with a little caching from going through `ensure_index`) which is a really unnecessary.  Pymongo 3.1 avoids all that index creation (see [here](http://api.mongodb.com/python/current/api/gridfs/index.html) but we aren't able to upgrade to pymongo 3.x since Ming doesn't support it yet: see https://sourceforge.net/p/merciless/bugs/27/ and  https://sourceforge.net/p/merciless/mailman/merciless-discuss/thread/CAJfq2JEicmKpwb31uN1ju%3D1jS0bVDS6fGVjk3n-dpL-BEFX3fg%40mail.gmail.com/#msg34734599 

We can work around it a little bit for the `GridFS()` constructor on 2.x  But the index will still be created on deletes and writes (within the `GridIn` class)


---

Sent from forge-allura.apache.org because dev@allura.apache.org is subscribed to https://forge-allura.apache.org/p/allura/tickets/

To unsubscribe from further messages, a project admin can change settings at https://forge-allura.apache.org/p/allura/admin/tickets/options.  Or, if this is a mailing list, you can unsubscribe from the mailing list.

[allura:tickets] #8109 Reduce gridfs index creation

Posted by Dave Brondsema <da...@brondsema.net>.
- **status**: in-progress --> review
- **Comment**:

On branch db/8109



---

** [tickets:#8109] Reduce gridfs index creation**

**Status:** review
**Milestone:** unreleased
**Labels:** performance 
**Created:** Thu Jul 28, 2016 07:53 PM UTC by Dave Brondsema
**Last Updated:** Thu Jul 28, 2016 07:53 PM UTC
**Owner:** Dave Brondsema


The `File` class creates a `GridFS` for basically any operation.  This includes viewing any attachment, thumbnail, project icon, project screenshot etc.  The pymongo GridFS code creates an index on `{ files_id: 1, n: 1 }` every time (with a little caching from going through `ensure_index`) which is a really unnecessary.  Pymongo 3.1 avoids all that index creation (see [here](http://api.mongodb.com/python/current/api/gridfs/index.html) but we aren't able to upgrade to pymongo 3.x since Ming doesn't support it yet: see https://sourceforge.net/p/merciless/bugs/27/ and  https://sourceforge.net/p/merciless/mailman/merciless-discuss/thread/CAJfq2JEicmKpwb31uN1ju%3D1jS0bVDS6fGVjk3n-dpL-BEFX3fg%40mail.gmail.com/#msg34734599 

We can work around it a little bit for the `GridFS()` constructor on 2.x  But the index will still be created on deletes and writes (within the `GridIn` class)


---

Sent from forge-allura.apache.org because dev@allura.apache.org is subscribed to https://forge-allura.apache.org/p/allura/tickets/

To unsubscribe from further messages, a project admin can change settings at https://forge-allura.apache.org/p/allura/admin/tickets/options.  Or, if this is a mailing list, you can unsubscribe from the mailing list.