Commit 6d7cb63c authored by Administrator's avatar Administrator

adding atomic to test, need to test

parent 4cba2458
This diff is collapsed.
{
"metadata": {
"name": "",
"signature": "sha256:1ca21b1538256b8f19a1e8b22af61d6439dd14912f5cd0c4e3eca72da3cea077"
"signature": "sha256:4bf33768886345db6440931d106e00bcaa9db0e0745a364d8e170774d0443d3a"
},
"nbformat": 3,
"nbformat_minor": 0,
......@@ -18,27 +18,34 @@
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 22
"prompt_number": 1
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"from time import time\n",
"print(time())"
"import datetime"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"1412775903.5760932\n"
]
}
"outputs": [],
"prompt_number": 2
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"#number_userIndex = 100\n",
"#number_projectIndex = 50\n",
"#number_documentIndex = 10000\n",
"number_userIndex = 5\n",
"number_projectIndex = 50\n",
"number_documentIndex = 1000"
],
"prompt_number": 8
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 3
},
{
"cell_type": "code",
......@@ -55,36 +62,73 @@
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 9
"prompt_number": 4
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"Node.objects.all().delete()\n",
"User.objects.filter(username__startswith = \"User #\").delete()\n",
"t0 = datetime.datetime.now()\n",
"with transaction.atomic():\n",
" for userIndex in range(number_userIndex):\n",
" userName = 'User #%d' % (userIndex, )\n",
" user = User(username=userName)\n",
" user.save()\n",
" rootNode = Node.add_root(name=userName, type_id=nodeTypeRoot.pk, user_id=user.id)\n",
" \n",
" print(userName)\n",
" for projectIndex in range(number_projectIndex):\n",
" projectName = 'Project #%d-%d' % (userIndex, projectIndex, )\n",
" projectNode = Node(name=projectName, type_id=nodeTypeProject.pk, user_id=user.id)\n",
" rootNode.add_child(instance=projectNode)\n",
" documents = [\n",
" {\"data\": {\"name\":'Document #%d-%d-%d' % (userIndex, projectIndex, documentIndex, ), \"type_id\":nodeTypeDocument.pk, \"user_id\":user.id}}\n",
" for documentIndex in range(number_documentIndex)\n",
" ]\n",
" Node.load_bulk(documents, projectNode)\n",
"\n",
"t0 = time()\n",
"for userIndex in range(100):\n",
" userName = 'User #%d' % (userIndex, )\n",
" user = User(username=userName)\n",
" user.save()\n",
" rootNode = Node.add_root(name=userName, type_id=nodeTypeRoot.pk, user_id=user.id)\n",
" print(userName)\n",
" for projectIndex in range(50):\n",
" projectName = 'Project #%d-%d' % (userIndex, projectIndex, )\n",
" projectNode = Node(name=projectName, type_id=nodeTypeProject.pk, user_id=user.id)\n",
" rootNode.add_child(instance=projectNode)\n",
" documents = [\n",
" {\"data\": {\"name\":'Document #%d-%d-%d' % (userIndex, projectIndex, documentIndex, ), \"type_id\":nodeTypeDocument.pk, \"user_id\":user.id}}\n",
" for documentIndex in range(10000)\n",
" ]\n",
" Node.load_bulk(documents, projectNode)\n",
"print(time() - t0)"
"t1 = datetime.datetime.now()\n",
"t1 - t0"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"User #0\n",
"User #1"
]
},
{
"output_type": "stream",
"stream": "stdout",
"text": [
"\n",
"User #2"
]
}
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"print(t1-t0)"
],
"language": "python",
"metadata": {},
"outputs": []
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"116.94907426834106\n"
]
}
],
"prompt_number": 10
},
{
"cell_type": "code",
......
# coding: utf-8
from django.db import transaction
from node.models import Node, NodeType
from models import Node, NodeType
from django.contrib.auth.models import User
from time import time
print(time())
......@@ -20,9 +19,14 @@ nodeTypeProject.save()
nodeTypeDocument = NodeType(name="Document")
nodeTypeDocument.save()
number_userIndex = 100
number_projectIndex = 50
number_documentIndex = 10000
#number_userIndex = 100
#number_projectIndex = 50
#number_documentIndex = 10000
number_userIndex = 10
number_projectIndex = 5
number_documentIndex = 100
# In[ ]:
......@@ -30,21 +34,24 @@ Node.objects.all().delete()
User.objects.filter(username__startswith = "User #").delete()
t0 = time()
for userIndex in range(number_userIndex):
userName = 'User #%d' % (userIndex, )
user = User(username=userName)
user.save()
rootNode = Node.add_root(name=userName, type_id=nodeTypeRoot.pk, user_id=user.id)
print(userName)
for projectIndex in range(number_projectIndex):
projectName = 'Project #%d-%d' % (userIndex, projectIndex, )
projectNode = Node(name=projectName, type_id=nodeTypeProject.pk, user_id=user.id)
rootNode.add_child(instance=projectNode)
documents = [
{"data": {"name":'Document #%d-%d-%d' % (userIndex, projectIndex, documentIndex, ), "type_id":nodeTypeDocument.pk, "user_id":user.id}}
for documentIndex in range(number_documentIndex)
]
Node.load_bulk(documents, projectNode)
with transaction.atomic():
for userIndex in range(number_userIndex):
userName = 'User #%d' % (userIndex, )
user = User(username=userName)
user.save()
rootNode = Node.add_root(name=userName, type_id=nodeTypeRoot.pk, user_id=user.id)
print(userName)
for projectIndex in range(number_projectIndex):
projectName = 'Project #%d-%d' % (userIndex, projectIndex, )
projectNode = Node(name=projectName, type_id=nodeTypeProject.pk, user_id=user.id)
rootNode.add_child(instance=projectNode)
documents = [
{"data": {"name":'Document #%d-%d-%d' % (userIndex, projectIndex, documentIndex, ), "type_id":nodeTypeDocument.pk, "user_id":user.id}}
for documentIndex in range(number_documentIndex)
]
Node.load_bulk(documents, projectNode)
print(time() - t0)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment