Commit Graph

114 Commits

Author SHA1 Message Date
Calen Pennington
67d66184a7 Push set_many save() calls into per-type caches 2015-05-20 15:07:25 -04:00
Calen Pennington
97c2513ed8 Push set_many object creation down into per-type caches 2015-05-20 15:07:24 -04:00
Calen Pennington
a0555d4cdc Add more documentation to DjangoOrmFieldCache 2015-05-20 15:07:24 -04:00
Calen Pennington
7a9923e289 Inline find_or_create 2015-05-20 15:07:24 -04:00
Calen Pennington
6ce7cc771a Move has logic down into per-scope caches 2015-05-20 15:07:23 -04:00
Calen Pennington
43d41d6648 Move delete logic down into per-scope caches 2015-05-20 15:07:23 -04:00
Calen Pennington
d1fae17ca2 Move the logic from find into the methods that use it 2015-05-20 15:07:23 -04:00
Calen Pennington
3bcd5ceb50 Push has down into FieldDataCache from DjangoKeyValueStore 2015-05-20 15:07:23 -04:00
Calen Pennington
9338b6a480 Push delete down into FieldDataCache from DjangoKeyValueStore 2015-05-20 15:07:22 -04:00
Calen Pennington
ebb3c906ff Push set_many down into FieldDataCache from DjangoKeyValueStore 2015-05-20 15:07:22 -04:00
Calen Pennington
951c19d789 Push get down into FieldDataCache, from DjangoKeyValueStore 2015-05-20 15:07:22 -04:00
Calen Pennington
5df3c22651 Push cache_key transformations inside the cache objects 2015-05-20 15:07:21 -04:00
Calen Pennington
29606a170d Extract common django-orm-backed-cache functionality 2015-05-20 15:07:21 -04:00
Calen Pennington
7909bee511 Stop leaking private _data members from per-scope caches 2015-05-20 15:07:21 -04:00
Calen Pennington
01cf2a3225 Store cache objects, rather than dictionaries generated by cache objects 2015-05-20 15:07:21 -04:00
Calen Pennington
21bcf55dba Extract _all_block_types and _all_usage_keys out of cache class 2015-05-20 15:07:20 -04:00
Calen Pennington
4463f71148 Separate caching for particular fields from instantiating the cache 2015-05-20 15:07:20 -04:00
Calen Pennington
0d37ec8099 Change the central cache to store at two levels: first by scope, then by cache key 2015-05-20 15:07:20 -04:00
Calen Pennington
645d2a727f Move field_object -> cache_key transformations to the scope-specific caches 2015-05-20 15:07:19 -04:00
Calen Pennington
7353d40b16 Push field_object iteration inside _retrieve_fields, and rename to _cache_fields 2015-05-20 15:07:19 -04:00
Calen Pennington
9059727672 Extract cache instantiation into classes per-scope 2015-05-20 15:07:19 -04:00
Calen Pennington
fd0c47bc42 Extract query chunking from FieldDataCache 2015-05-20 15:07:18 -04:00
Adam Palay
9196817abb Revert "Decrease the number of inserts and updates needed by DjangoKeyValueStore"
This reverts commit 88b9187476.
2015-04-15 17:41:11 -04:00
Calen Pennington
8e4ee78fff Merge pull request #7262 from edx/cale/xblock-filtered-children-tests
Clear children cache when binding an XBlock to a user.
2015-03-17 16:04:54 -04:00
Calen Pennington
11dcf12f14 Make XModule use the same get_children that XModuleDescriptor and XBlock do, and make it returned the same CombinedSystem 2015-03-17 13:15:18 -04:00
Calen Pennington
88b9187476 Decrease the number of inserts and updates needed by DjangoKeyValueStore 2015-03-17 10:57:13 -04:00
Calen Pennington
d919d2ae46 Teach LMS how to render XBlockAsides
[PLAT-217]
2014-12-13 08:26:28 -05:00
David Baumgold
36e77c7463 Fixing pep8 issues 2014-12-11 13:04:49 -05:00
Calen Pennington
14e6f3cc2b Don't query for the user every time in FieldDataCache, just use the user_id instead 2014-12-03 11:00:03 -05:00
Don Mitchell
4faed64859 Generalize bulk_operations logic
LMS-11366
2014-09-10 15:35:28 -04:00
Don Mitchell
b28af4fdaa Temporarily disable bulk operations b/c old mongo
does too much work on exit and doesn't handle nesting
2014-09-04 17:28:17 -04:00
Calen Pennington
0e7e266a5b Push bulk_write_operations up into ModuleStoreRead, and rename to remove reference to writes 2014-08-27 16:29:48 -04:00
Don Mitchell
e624ff3b04 Make path_to_location use bulk_write_operation for performance. 2014-08-27 16:29:47 -04:00
Mat Peterson
4f6088cbd1 Fixed some isinstance errors with opaque-keys 2014-07-11 15:40:08 -04:00
Calen Pennington
cfcbdc0145 Move to OpaqueKey implementations from the external library
[LMS-2757]
2014-05-29 17:03:35 -04:00
Calen Pennington
76235c1027 Allow cross course references in the LMS 2014-05-20 11:44:09 -04:00
Calen Pennington
155ffe37ca Merge remote-tracking branch 'edx/master' into opaque-keys-merge-master
Conflicts:
	cms/djangoapps/contentstore/views/item.py
	cms/djangoapps/contentstore/views/tests/test_container.py
	cms/djangoapps/contentstore/views/tests/test_tabs.py
	common/lib/xmodule/xmodule/modulestore/mongo/draft.py
	lms/djangoapps/certificates/management/commands/gen_cert_report.py
	lms/djangoapps/certificates/queue.py
	lms/djangoapps/certificates/views.py
	lms/djangoapps/courseware/module_render.py
	lms/djangoapps/courseware/tests/test_module_render.py
	lms/djangoapps/instructor/views/api.py
	lms/djangoapps/instructor/views/instructor_dashboard.py
	lms/djangoapps/instructor/views/legacy.py
	lms/djangoapps/shoppingcart/tests/test_models.py
	lms/djangoapps/verify_student/views.py
2014-05-09 15:29:32 -04:00
Don Mitchell
7be81341d7 Revert StudentModule.module_state_key to field rather than computed property 2014-05-09 10:41:12 -04:00
Calen Pennington
9811926d97 Make course ids and usage ids opaque to LMS and Studio [partial commit]
This commit updates lms/djangoapps/courseware.

These keys are now objects with a limited interface, and the particular
internal representation is managed by the data storage layer (the
modulestore).

For the LMS, there should be no outward-facing changes to the system.
The keys are, for now, a change to internal representation only. For
Studio, the new serialized form of the keys is used in urls, to allow
for further migration in the future.

Co-Author: Andy Armstrong <andya@edx.org>
Co-Author: Christina Roberts <christina@edx.org>
Co-Author: David Baumgold <db@edx.org>
Co-Author: Diana Huang <dkh@edx.org>
Co-Author: Don Mitchell <dmitchell@edx.org>
Co-Author: Julia Hansbrough <julia@edx.org>
Co-Author: Nimisha Asthagiri <nasthagiri@edx.org>
Co-Author: Sarina Canelake <sarina@edx.org>

[LMS-2370]
2014-05-06 10:08:32 -04:00
Jason Bau
f8c062b6ce lti 2.0 result service rest endpoint 2014-04-29 12:01:12 -07:00
Jason Bau
a160428b9b Move FieldDataCache assert to check both get and get_or_create 2014-02-27 20:06:16 -08:00
Ned Batchelder
1932c126b8 Rename DbModel to KvsFieldData. 2014-01-14 13:09:36 -05:00
Calen Pennington
a6a004314a Use block type, rather than class names for StudentPreference field storage in LMS 2014-01-09 15:59:16 -05:00
Calen Pennington
52ab2b1313 Make FieldDataCache use the user from scope_ids, rather than its pre-configured user
Co-author: Ned Batchelder <ned@edx.org>
2013-11-26 16:29:35 -05:00
Calen Pennington
6b474724ac Make XModuleDescriptor and XModule act as a single class
By transparently proxying between the XModuleDescriptor and the XModule,
and between their runtimes, we can make them act as a single class, so
that we can swap in an actual XBlock instead.
2013-10-08 15:29:17 -04:00
Calen Pennington
8201b1412e Use XBlock 0.3 2013-09-06 09:45:59 -04:00
Diana Huang
3f9431e8cf Provide implicit saves for XBlocks and XModules.
Update existing tests and provide new ones to test new paradigm.
2013-07-18 16:37:34 -04:00
Sarina Canelake
f0c9aa3916 Provide set_many methods for Lms and Mongo KeyValueStores
Refactor new set_many and update XBlock version number.
2013-07-18 15:30:13 -04:00
Felix Sun
c00721bbe6 Fixed the preferences scope of xblock.
Added self to authors.

Conflicts:
	AUTHORS
	CHANGELOG.rst
2013-06-20 10:17:25 -04:00
Calen Pennington
99424a9716 Merge pull request #1792 from MITx/fix/ichuang/duplicate-entry-error
fix IntegrityError duplicate entry issue with module_data Scope.student_state update
2013-04-04 11:57:59 -07:00